Agile + DevOps West 2020 Pre-conference Training : Agile Unit Testing Workshop
Sunday, June 7, 2020 - 8:30am to Monday, June 8, 2020 - 5:00pm

Agile Unit Testing Workshop

Add to calendar
  • Practice designing, implementing, and executing unit tests
  • Discover agile unit testing best practices
  • Explore key unit testing approaches like TDD
  • Find out how to incorporate non-functional tests such as security and performance
  • Understand how to use stubs and mocks to eliminate dependencies
  • Learn strategies for increasing unit test coverage
Gain hands-on experience with unit test design, implementation, and execution in this two-day course for development team members who are comfortable with their programming language and the basics of object-oriented design. Attendees learn the techniques of design and developing unit tests, test-driven development (TDD), unit testing best practices, and ways to increase unit test coverage. Practice common unit testing and experience how these techniques reduce defect escapes downstream. This set of practices for developers is essential core competencies for ensuring what they build is effectively tested.
This workshop-style course provides hands-on exercises to allow developers to immediately apply unit testing techniques in an informal and interactive setting. Attendees will leave the workshop with the ability to apply unit testing best practices in their own environment. 
Who Should Attend?
This is a novice to intermediate level course intended for software developers. Attendees should have competence with common programming languages such as Java, JavaScript, or C#. 
A working knowledge of software development processes, familiarity with basic object-oriented principles of design, and a basic familiarity with an agile framework such as Scrum or Kanban are necessary for this course.
Laptop Required
This class involves hands-on activities using sample software to better facilitate learning. Each student should bring a laptop with sufficient permissions to enable remote desktop protocol (RDP) applications. Please verify permissions with your IT Admin before class. If you or your Admin have questions about the specific applications involved, contact our Client Support team.


Course Outline
Introduction to TDD
Why do TDD?
What are unit tests?
Comparison of test levels
Unit Test details
Handling exceptions
Black box thinking
Related concepts
  • Agile
  • MVP
  • BDD
  • Pair programming
  • Continuous integration
TDD coding cycle
Best practices
Code coverage
  • Statement
  • Decision
  • Condition
  • Notes on technique
  • Mutation testing
General notes
  • Duration
  • Test orbits and VCS hooks
What's standing in our way?
Next steps


Class Daily Schedule
/Registration 7:30 - 8:30 a.m.
Morning Session 8:30 a.m. - 12:00 p.m.
Lunch 12:00 - 1:00 p.m.
Afternoon Session 1:00 - 5:00 p.m.
Times represent the typical daily schedule. Please confirm your schedule at registration.
Training Course Fee Includes
• Tuition
• Course notebook
• Continental breakfasts and refreshment breaks
• Lunches
• Letter of completion



Byron Katz has been in love with computers since his father bought the family a Commodore 64. A degreed architect, he found his way back to software development in 2010, and his career has included roles as a quality assurance lead, a full-stack developer, consultant, and sales engineer. Byron has experience at software firms ranging from start-ups to large enterprises to government projects. His primary project experience has been as a full-stack developer of multi-tier web projects in Java and .Net, but most recently Byron has had the opportunity to practice DevOps. He enjoys making seemingly-difficult concepts accessible to a larger audience, and his agenda is to persuade others that the costs of quality, simplicity, and beauty pay for themselves in the long run.