Test-Driven Development (TDD) with Java

 

Recommended Duration:
2 Days
Benefits
Attendees will learn testing concepts (structural, black box, white box, critical path, etc…) and understand how Test-Driven Development (TDD) is used. Participants will learn to use various open-source tools including JUnit and JWebUnit to test Java programs and Web applications.
Audience
Java developers using Test-Driven Development (TDD) methods.

Prerequisites
Students should have experience working with Java or have completed “Java Programming I” or equivalent.

Exercises
Seven computer exercises will be conducted to emphasize major course topics. Exercises may be performed using available IDE (Eclipse, IBM RAD, Oracle JDeveloper) or command-line tools.
Major Topics
  • Iterative/Agile Development cycle
  • Overview of Testing: (Unit, User Acceptance, Regression, Integration, System Testing, System Integration)
  • White/Black/Gray Box
  • Functional Testing
  • Domain Partitioning (Equivalence Partitioning & Boundary Analysis)
  • Non-Functional Testing
  • Testing Strategy and Test Plans
  • Test Suites
  • Matching Test Plans to Use Cases
  • Programming by Intention
  • Test-Driven Development (TDD)
  • Automated Testing Frameworks (JUnit, NUnit, HttpUnit, etc...)
  • Stubs, Fakes, and Mocks
  • Designing and setting up testing
  • Identify refactoring opportunities (“code smells”)
  • TDD and Legacy code
  • Test Initialization and Cleanup
  • Test Patterns
  • Server-side and Database testing
  • GUI testing and Web testing (JWebUnit, HttpUnit, Cactus)
  • Load testing (JMeter)
  • Test Management Issues
  • How do Capture/Replay work?