Test-Driven Development Workshop with Java
4281
Test-Driven Development Workshop with Java
Classroom
Live Virtual
Private/On Site
Test-Driven Development (TDD) is a design engineering process that relies on a very short development cycle. A TDD approach to software development requires a thorough review of the requirements or design before any functional code is written. The development process is started by writing the test case, then the code to pass the test and then refactoring until completion. Benefits of a TDD approach to software engineering include:
This three-day course is a deep dive in to TDD that incorporates the steps that are necessary for effective implementation. You will cover unit tests, user stories, design, refactoring, frameworks, and how to apply them to existing solutions. In addition, this course explores the implications of code dependencies, fluid requirements, and early detection of issues. This is an interactive class with hands-on labs. To get the most out of this course, you are encouraged to fully participate. This course demonstrates the skills developers and teams need for building quality applications sustainably, with quality, for the life of the code base.
Note: A PC or Mac is required for this class to access remote labs.
Outline
1. Agile Overview
2. Principles of Agile Development
- Design Principles Overview
- Coding Principles
3. Unit Testing
- Unit Test Fundamentals
- Advanced Unit Testing
- Frameworks
- Test Runners
- Advanced Test Attributes
4. Test Driven Development
- TDD Rhythm
- Sustainable TDD
- Supporting Practices
- Pair Programming
- Pairing Techniques
- Eight Wastes of Software Development
- Test Automation
5. Refactoring
- Why Refactor?
- Refactoring Methods
- Refactoring Cycle
6. Pair Programming
- Pair Programming
- Advantages of Pairing
- Pairing Techniques
7. Acceptance Testing and BDD
- Acceptance Testing
- Best Practices for Effective Testing
- BDD vs. ATDD
8. Principles and Benefits
- Consequences of no Testing
- TDD Solutions
9. Unit Test Examples
- Queues and Stacks
- Unit Test Examples
- Advanced Refactoring
10. Testing for Non-Developers
- FIT and Fitnesse
- Additional TDD Considerations
Questions?
Whether you need assistance scheduling a class for yourself or for your group, GCA's Education Account Manager's will craft a customized training solution to meet the needs of your organization.