|
Provided by: Skills Matter TDD Training: Test Driven Development in Java Training - 2 days - UK, Unit Testing and Refactoring Training for Agile Software DJava |
![]() |
Training
Provided by Skills Matter
TRAINING COURSE SUBTITLE
Unit Testing and Refactoring for Agile Software Development
TRAINING COURSE SUMMARY
This intensive and highly practical 2-day course presents a number of modern practices for developing code based on an iterative and incremental development lifecycle. It introduces agility and predictability as two qualities essential to modern software development and offers a test-driven iterative and incremental approach to achieve these qualities.
The course is intended as a practical course: the best way to appreciate how test-driven development works and what it feels like is to do it in practice, making sense of the principles it embodies. During the course, delegates will work on the construction phase of the course project, where the design is grown and code delivered incrementally according to functionality or risk. Delegates will experience how unit testing provides confidence in existing code and supports the ability to refactor code as development unfolds.
TRAINING COURSE OBJECTIVES
Unit Testing and Refactoring for Agile Software Development
TRAINING COURSE SUMMARY
This intensive and highly practical 2-day course presents a number of modern practices for developing code based on an iterative and incremental development lifecycle. It introduces agility and predictability as two qualities essential to modern software development and offers a test-driven iterative and incremental approach to achieve these qualities.
The course is intended as a practical course: the best way to appreciate how test-driven development works and what it feels like is to do it in practice, making sense of the principles it embodies. During the course, delegates will work on the construction phase of the course project, where the design is grown and code delivered incrementally according to functionality or risk. Delegates will experience how unit testing provides confidence in existing code and supports the ability to refactor code as development unfolds.
TRAINING COURSE OBJECTIVES
- Appreciate the benefits of a continuous and iterative approach to design and delivery
- Recognise the purpose and practice of refactoring in keeping a system supple and adaptable
- Know how to build up a set of unit tests in JUnit
- Understand the consequences of dependency management on testing and code quality
|
|
||||||||||||||
TDD Training: Test Driven Development in Java Training - 2 days - UK, Unit Testing and Refactoring Training for Agile Software D
TRAINING COURSE PROGRAMME
-
Agile Development Microprocess
- Traditional versus agile development processes
- Iterative and incremental development
- Informal and continuous design
- The role of refactoring
- Refactoring versus other code changes
- Extreme Programming
- Test-Driven Development
- Traditional view and reality of testing
- Driving development through testing
- Testing early, often and automatically
- Testing versus debugging
- White-box versus black-box testing
- Functional versus operational testing
- Test plans versus test code
- Use of assert
- Testing at the interface
- Testing the simplest things first
- Testing incrementally
- Testing correctness of failure
- JUnit and the xUnit family
- Test cases, test suites and test runners
- Essential structure of the framework
- Assertion methods
- Testing correctness of exceptions
- Defining common fixture code
- JUnit pattern usage
- Extensions to Junit
- Red, green, refactor
- None to one to many
- Faking it
- Telling the truth
- Isolated and short tests
- Refactor common fixture code
- Declare, prepare, assert
- Test by method, state or scenario
- Custom assertions
- Compile-time constraints
- Running all tests
- Renaming variables, methods, classes and packages
- Restructuring class hierarchies by extracting interfaces, superclasses and subclasses
- Partitioning classes by extracting classes and methods
- Changing private representation
- Unmanaged dependencies
- Test-driven decoupling
- Layering
- Reorganising packages
- Eliminating cyclic dependencies
- Mock objects
- Eliminating Singletons, statics and other globals
- Testing I/O
About The Training Provider: Skills Matter
Skills Matter - Skills Matter is a leading provider of training, mentoring and project based skills transfer in agile software development using advanced technologies.
Our curriculum comprises of RUP training, eXtreme Programming, Test Driven Development training and UML training, J2EE & Java training, including Sun, WebLogic and WebSphere training, C and .NET training and training in C programming. We...

