Course Outline

Getting Started with JUnit

  • What is unit testing and why it matters
  • JUnit evolution: from JUnit 4 to JUnit 5 (Jupiter, Platform, Vintage)
  • Setting up JUnit with Maven, Gradle, and IDEs

Writing Basic Tests

  • Creating and running simple test cases
  • Assertions and assumptions
  • Understanding test lifecycle: @BeforeAll, @BeforeEach, @AfterEach, @AfterAll

Structuring and Organizing Tests

  • Nested tests and test classes
  • Parameterized tests and repeated tests
  • Tagging and filtering tests

Mocking and Isolation

  • Understanding mocks, stubs, and test doubles
  • Using Mockito for mocking dependencies
  • Mocking static methods and final classes

Integration with Build Tools

  • Running JUnit tests with Maven
  • Running JUnit tests with Gradle
  • Integrating tests into development workflows

Testing Databases and APIs

  • Database testing strategies with JUnit
  • Using Testcontainers for database and service integration
  • Testing REST APIs with Spring Boot and JUnit

Advanced Testing Practices

  • Test-driven development (TDD) with JUnit
  • Behavior-driven development (BDD) concepts
  • Best practices for writing maintainable test suites

Continuous Integration and Automation

  • Running JUnit tests in Jenkins, GitHub Actions, and GitLab CI
  • Generating test reports and coverage metrics
  • Automating regression and integration test suites

Specialized Testing Scenarios

  • Testing legacy code with JUnit
  • Unit-testing asynchronous and reactive code
  • Testing microservices and distributed systems

Summary and Next Steps

Requirements

  • Basic knowledge of the Java programming language

Audience

  • Java developers
  • Software engineers
  • QA engineers working with automated testing
 21 Hours

Number of participants


Price per participant

Testimonials (1)

Upcoming Courses

Related Categories