By now Test Driven Development (TDD) is a well-known and appreciated practice exercised by many development teams around the globe.
Unlike the name suggests, TDD is not a testing technique but a development technique that results in cleaner, high-quality code. Implementing effective and useful TDD-ing is a complicated task that requires developers to have both discipline and familiarity with a set of test automation tools.
This 1-day workshop explains the TDD as a design methodology, briefly introduces the tools, and then dives into complex issues of real-world problems: APIs, complex integrations, using the principles in legacy code, and more. It includes hands-on exercises (about 50% of the workshop’s duration). Attendees will practice the needed techniques to start testing both new and existing code.
The workshop is intended for: Software developers and software team leaders.
Workshop length: 1 day.
Workshop goals
Following the workshop, attendees will be able to:
- Break down requirements into test cases
- Use TDD to develop new code
- Use TDD on legacy code
- Refactor code to make it more testable
Workshop agenda
- Test Driven Development (TDD) as a design methodology
- TDD & BDD (behavior driven development)
- Incremental testing
- TDD in legacy code
- Abstracting dependencies
- Using adapters and facades
- Refactoring for testability as preparation for TDD
- Clean tests
- TDD best practices
Prerequisites
- Familiarity with unit testing is required. The basics can be covered in the Introduction to Unit Tesitng and TDD workshop.
- Attendees need to have their own laptops ready and download the exercises beforehand.
- The training materials are targeted to either Java, JavaScript, Python, C, C++, Go or C# developers.