Pragmatic Test-Driven Development
Pragmatic Test-Driven Development

Course Information:January 25-27, 2012 – 9am – 5pm Learn more on our Pragmatic Test-Driven Development Q&A page. |
InstructorsRebecca Wirfs-Brock & Joseph Yoder |
Overview
Test-driven development (TDD) means writing unit tests along with production code. It leads to modular, flexible and extensible code. Many aspire to follow TDD practices however few know how to do so effectively. Join Joseph Yoder, founder of the Refactory and Rebecca Wirfs-Brock, inventor of Responsibility-Driven Design as you learn Pragmatic TDD. In this 3 day intensive course you’ll learn several natural rhythms of testing, design and programming, uncover how refactoring affects tests, and see how acceptance and system quality tests support and enhance core TDD practices.
Prerequisites
Attendees should be familiar with Java or C# and object-oriented programming, and be interested in sustainable agile development and testing practices. We encourage attendees to BYOL (bring your own laptop) equipped with your favorite development environment (.NET or Java).
Intended Audience
This workshop benefits developers, testers, and QA. Developers will learn effective techniques for writing unit tests. They’ll also learn what’s required to maintain test suites and effective ways to test services. Testers will learn how to write acceptance tests for agile user stories and how different testing supports core TDD development practices.
Course Outline
This workshop gives you hands-on experience and builds skills in effectively writing tests in an agile development environment.
In this hands-on workshop you will learn:
- What is Test-Driven Development?
- Two different TDD rhythms: Test first and test frequently
- How to write well-formed unit and acceptance tests
- How to write maintainable tests
- Pragmatic testing: where tests add value
- Mocking and techniques for isolating tested code
- Testing frameworks
- How to specify and test for system qualities (e.g. load, performance, usability)
- The impacts of refactoring on tests
- Techniques for testing web services
Agenda:
- Agile development values
- Different tests and how they support agile development: acceptance, functional, unit, integration, smoke, system quality tests
- Effective test code and production coding practices
- When tests are run (and who should write them)
- What makes a good unit test?
- What makes a good acceptance test?
- The 10 commandments for testing
- Where tests add value and where they don’t
- How refactoring affects tests
- Organizing and managing tests
- Effective test automation
- Testing external services
Learn more on our Pragmatic Test-Driven Development Q&A page.
| Top of Page >> |









