Java Test-Driven Development


Course Description

All developers want to build good quality software but not all developers test their software as they go along. Why not? A common explanation is I don`t have time to write tests! The more pressure they feel, the fewer tests they write. This leads to less accurate and stable code, less productivity, less confidence and, ultimately, more pressure. It`s a vicious cycle. This course is designed to help you break out of the cycle by embracing unit-testing and, in particular, test-driven development. We will introduce the techniques and the tools necessary to prove your code as you go along.

Duration: 2 days


Prerequisites

At least 3 months Java programming experience

what you`ll learn

Creating tests using JUnit
Using assertions and Hamcrest matchers
Adopting a test-driven approach to development
Using stubs and mock objects
Writing integration tests
Testing the user interface

Introduction to JUnit

Getting started with unit testing using JUnit
Generating test stubs
Using assertions
Running tests
Test statuses
Dealing with exceptions
Best practice

Going Further with Unit Testing

Organizing projects
Performing setup and teardown operations
Using Hamcrest matchers
Defining a custom matcher
Test suites

TDD and Agile Development

Understanding the TDD process
Test, code, refactor
TDD strategies
Refactoring techniques
Testing patterns
Best practice

Unit Testing with Mock Objects

Managing dependencies
Defining test doubles
Stubs, mocks, dummies, and fakes
Tool support - JMock, EasyMock, and Mockito

Additional testing techniques

Integration testing
Testing the user interface using Selenium WebDriver
Behaviour-driven design (BDD)
Using JBehave for BDD


TDD Software testing Java Test JUnit Java Test Driven Development