Test-Driven Development Workshop
Build your skills to Discover, Collaborate and Succeed

Test-Driven Development Workshop

Download Course Details PDF

Dates & Locations

Date City, State Address Sponsor Map Instructor
No open enrollments at this time, please check back.

Course Description

The practice of Test Driven Development (TDD) allows an agile development team to efficiently convert user defined requirements into a well-designed, fully tested working implementation that not only meets the business need, but will also be easy and safe to extend, maintain, and enhance over time. Rather than spending weeks or months on an extended “design phase,” agile teams use TDD to evolve and optimize their design and implementation over time to meet the team’s evolving understanding of the business requirements.

You will learn the basic skills and gain the hands-on experience required to implement TDD in your agile project. You’ll be introduced to TDD related skills and concepts in context while working to turn example business requirements into working code.

As a technical workshop, this course emphasizes hands-on coding and the use of widely adopted development tools and testing frameworks for the Java development language. The course can be modified to use real-life examples and situations from the students’ own experiences. It would also benefit a new Agile project team that attends as a group, providing a common foundation of knowledge and experience for everyone on the team.

Objectives


Topics Covered

  • Sketching an implementation model from user requirements, emphasizing the assignment of responsibilities to classes, components, and sub-systems.
  • The TDD Test-Code-Refactor cycle.
  • Coding by intention, and triangulating to arrive at an optimal solution.
  • Using unit tests as executable specifications that document the behavior of the code that they test.
  • Detecting common design deficiencies or “code smells” and improving them through refactoring.
  • Isolating units to be tested using test doubles and mocking frameworks.
  • The relationship between user stories, confirmations, acceptance tests, and unit tests.

Audience and Certification Details

This course is primarily intended for hands-on developers. Architects, technical leadership, and anyone who must understand, review, and communicate the use and benefits of TDD by agile teams will also benefit.

Prerequisites

Participants should be familiar with the Java programming language and its commonly used libraries and APIs, and at least somewhat familiar with the Eclipse IDE.

System Requirements

  • JDK (Java Development Kit) version 1.5 or Later
  • Eclipse IDE version 3.6 or later
  • JUnit version 4.X and JUnit plug-in for Eclipse
  • EasyMock framework version 3 or later.

Duration

3 days

Price

Please call Icon at (636) 530-7776 for private and public pricing for your team.