To register online click here, or call
800-413-0939
Our Registrars will be happy to assist you.

TDD Training Course

Test Driven Development (TDD) Using Java

Duration: 3 Days | Price: $1595 | Class Dates:

Click here for information regarding remote access training.

Students Will Learn:

  • Unit Testing Using JUnit
  • Regression and Acceptance Testing
  • Mocks, Fakes, and Stubs
  • Database Issues in TDD
  • Continuous Integration Servers
  • Automated Testing
  • TDD Patterns and Anti-Patterns

Course Description: This course provides students with hands on experience learning Test Driven Development (TDD) using JUnit. Students will build unit tests using mocks, fakes, stubs and drivers, and address issues working with databases and other systems. Student will create tests and code that will be more likely to meet and exceed requirements. Code that receives "test coverage" will not break existing systems, because tests are passed before code is checked in.

Students will also examine TDD in other languages like C# to gain a broader view of options and issues working in a multi-language shop. Comprehensive labs using Java provide facilitated hands on practice crucial to developing competence and confidence with the new skills being learned.

Course Prerequisites: Java SE 5+ programming experience and an understanding of object-oriented design principles. HOTT's Java Programming course or equivalent knowledge provides a solid foundation.

Test Driven Development (TDD) Using Java Course Overview:

Why Test? Think Twice, Write Production Code Once
  • Safety Net of Automated Testing
  • Agile Development Concepts
  • Fewer Bugs, Less Stress
  • Smoother Production Rollouts
  • Write with Tests, as Fast or Faster
  • Make Changes More Safely
  • “Don’t Break the System”
Unit Testing
  • JUnit
  • 3.x vs 4.0 JUnit Testing
  • Start off Simple and Add More Tests
  • Making Tests Easy to Run
  • Red, Green Refactor
  • Assertion Methods
  • JUnit Cleanup Methods
  • Boundary Testing
  • Know Unit Test Limitations
Mocks, Fakes, Stubs and Drivers
  • TDD Development Patterns
  • Naming Conventions for Better Code
  • Mock Objects
  • Fakes
  • Stubs
  • Test Doubles
  • Self-Shunt Pattern
Database Unit Testing
  • Database Mocks
  • Writing Database Tests
  • Setting Up Database Tests
  • Tearing Down Database Tests
  • Black Box Tests
  • White Box Testing
  • Database Sandboxes for Testing
  • JPA/Hibernate Testing Issues
System, Regression and Acceptance Testing
  • Statistical Sampling
  • Usability Testing
  • Test Protocols
  • Regression Testing
  • Acceptance Testing
Patterns and Anti-Patterns in TDD
  • Factory Methods
  • Web GUI Testing
  • Coding to Interface References
  • Checking Parameters for Validity Test
  • Open/Closed Principle, Open to Extension, Closed to Change
  • Break Out Method/Object
  • Extract and Override Call
  • Extract and Override Factory Method
Continuous Integration Servers/Automated Testing
  • Early Warning of Conflicts
  • Metrics and Tools
  • Checking into Repository
    • Team Foundation Server (TFS)
    • Subversion
  • Continuous Integration Servers
    • CruiseControl.NET
    • Hudson
  • Automate the Build/Deployment
Introduction to Refactoring
  • When to Refactor Existing Code
  • Big Refactoring vs. Small Refactoring
  • Teasing Apart Inheritance
  • Looking for Code Smells
  • Improving Methods to be More Flexible

Multiple Training Locations - Convenience and Cost Control

Regularly Scheduled Courses in more than 100 Cities Across North America and the United Kingdom