Unit Testing with JUnit Training Course

Primary tabs

Course Code


Duration Duration

21 hours (usually 3 days including breaks)

Requirements Requirements

Basic Java language knowledge is required to participate in this course.

Overview Overview

Course Outline Course Outline

JUnit jumpstart

  • Proving it works
  • Starting from scratch
  • Understanding unit testing frameworks
  • Setting up JUnit
  • Testing with JUnit

Exploring JUnit

  • Exploring core JUnit
  • Launching tests with test runners
  • Composing tests with TestSuite
  • Collecting parameters with TestResult
  • Observing results with TestListener
  • Working with TestCase
  • Stepping through TestCalculator

Sampling JUnit

  • Introducing the controller component
  • Let's test it!
  • Testing exception-handling
  • Setting up a project for testing

Examining software tests

  • Why we need unit tests
  • Kinds of tests
  • Determining how good tests are
  • Test-driven development

Automating JUnit

  • A day in the life
  • Running tests from Ant
  • Running tests from Maven
  • Running tests from Eclipse

Coarse-grained testing with stubs

  • Introducing Stubs
  • Practicing on an HTTP Connection sample
  • Stubbing the web server's resources
  • Stubbing the connection

Testing in isolation with mock objects

  • Introducing mock objects
  • Mock tasting's simple example
  • Using mock objects as a refactoring technique
  • Practicing on a HTTP connection sample
  • Using mocks as Trojan horses
  • Deciding when to use mock objects

In-container testing with Cactus

  • The problem with unit-testing components
  • Testing components using mock objects
  • Integration unit tests
  • Introducing Cactus
  • Testing components using Cactus
  • How Cactus works

Unit-testing servlets and filters

  • Presenting the Administration application
  • Writing servlet tests with Cactus
  • Testing servlets with mock objects
  • Writing filter tests with Cactus
  • When to use Cactus, and when to use mock objects

Unit-testing JSPs and taglibs

  • Revisiting the Administration application
  • JSP unit testing
  • Unit-testing a JSP in isolation with Cactus
  • Unit-testing taglibs with Cactus
  • Unit-testing taglibs with mock objects
  • When to use mock objects, and when to use Cactus

Unit-testing database applications

  • Database unit testing
  • Testing business logic in isolation from the database
  • Testing persistence code in isolation from the database
  • Writing database integration unit tests
  • Running the Cactus test using Ant
  • Tuning for build performance
  • Overall database unit-testing strategy

Unit-testing EJBs

  • Defining a sample EJB application
  • Using a fa?ade strategy
  • Unit testing JNDI code using mock objects
  • Unit-testing session beans
  • Using mock objects to test message-driven beans
  • Using mock objects to test entity beans
  • Choosing the right mock object strategy
  • Using integration unit tests
  • Using JUnit and remote calls
  • Using Cactus

Guaranteed to run even with a single delegate!
Public Classroom Public Classroom
Participants from multiple organisations. Topics usually cannot be customised
From 2600PLN
Private Classroom Private Classroom
Participants are from one organisation only. No external participants are allowed. Usually customised to a specific group, course topics are agreed between the client and the trainer.
Private Remote Private Remote
The instructor and the participants are in two different physical locations and communicate via the Internet
From 6800PLN
Request quote

The more delegates, the greater the savings per delegate. Table reflects price per delegate and is used for illustration purposes only, actual prices may differ.

Number of Delegates Public Classroom Private Remote
1 2600PLN 6800PLN
2 2050PLN 4150PLN
3 1867PLN 3267PLN
4 1775PLN 2825PLN
Cannot find a suitable date? Choose Your Course Date >>
Too expensive? Suggest your price

Related Categories

Course Discounts

Course Venue Course Date Course Price [Remote/Classroom]
Agile Project Management with Scrum Kraków, ul. Rzemieślnicza 1 Wed, 2016-11-02 09:00 3386PLN / 1929PLN
Understanding Windows Communication Foundation (WCF) Szczecin, ul. Małopolska 23 Wed, 2016-11-02 09:00 10266PLN / 3611PLN
Python Programming Szczecin, ul. Małopolska 23 Mon, 2016-11-07 09:00 N/A / 5434PLN
Agile Project Management with Scrum Poznan, Garbary 100/63 Mon, 2016-11-07 09:00 3386PLN / 1529PLN
Business Analysis, BABOK V3.0 and IIBA Certification Preparation Katowice ul. Opolska 22 Mon, 2016-11-07 09:00 9405PLN / 5753PLN
Adobe InDesign Lublin, ul. Spadochroniarzy 9 Mon, 2016-11-07 09:00 1881PLN / 1327PLN
Administration of Linux System Olsztyn, ul. Kajki 3/1 Tue, 2016-11-08 09:00 3861PLN / 2681PLN
SQL Fundamentals Warszawa, ul. Złota 3/11 Wed, 2016-11-09 09:00 3663PLN / 1510PLN
Adobe Illustrator Katowice ul. Opolska 22 Wed, 2016-11-09 09:00 2871PLN / 1848PLN
CP100A: Google Cloud Platform Fundamentals Gliwice ul. Karola Marksa 11 Thu, 2016-11-10 09:00 7613PLN / 2657PLN
Java Performance Wroclaw, ul.Ludwika Rydygiera 2a/22 Mon, 2016-11-14 09:00 9801PLN / 3000PLN
IT Automation with Saltstack Warszawa, ul. Złota 3/11 Mon, 2016-11-14 09:00 13910PLN / 4615PLN
Excel For Statistical Data Analysis Warszawa, ul. Złota 3/11 Mon, 2016-11-14 09:00 2673PLN / 1291PLN
Prototypowanie interaktywnych makiet - Axure Szczecin, ul. Małopolska 23 Mon, 2016-11-14 09:00 5445PLN / 2101PLN
Visual Basic for Applications (VBA) in Excel - Advanced Białystok, ul. Malmeda 1 Mon, 2016-11-14 09:00 3455PLN / 2202PLN
Social Media - facebook, twitter, blog, youtube, google+ Gdynia, ul. Ejsmonda 2 Mon, 2016-11-14 09:00 1881PLN / 1102PLN
Apache Web Server Administration Kraków, ul. Rzemieślnicza 1 Tue, 2016-11-15 09:00 4732PLN / 3177PLN
SQL in MySQL Gdynia, ul. Ejsmonda 2 Thu, 2016-11-17 09:00 2851PLN / 1413PLN
OCUP2 UML 2.5 Certification - Intermediate Exam Preparation Wroclaw, ul.Ludwika Rydygiera 2a/22 Thu, 2016-11-17 09:00 5148PLN / 2175PLN
Creating and managing Web sites Kraków, ul. Rzemieślnicza 1 Mon, 2016-11-21 09:00 5841PLN / 3298PLN
Stress management Gdynia, ul. Ejsmonda 2 Mon, 2016-11-21 09:00 5148PLN / 1730PLN
Angular JavaScript Katowice ul. Opolska 22 Mon, 2016-11-21 09:00 5940PLN / 3380PLN
Agile w projektach zdalnych Katowice ul. Opolska 22 Tue, 2016-11-22 09:00 5049PLN / 1962PLN
Effective working with spreadsheet in Excel Rzeszów, Plac Wolności 13 Thu, 2016-11-24 09:00 PLN / 767PLN
Oracle SQL for beginners Poznan, Garbary 100/63 Mon, 2016-11-28 09:00 4752PLN / 2133PLN
Visual Basic for Applications (VBA) for Analysts Kielce, ul. Warszawska 19 Tue, 2016-11-29 09:00 2772PLN / 1974PLN
Test Automation with Selenium Warszawa, ul. Złota 3/11 Mon, 2016-12-05 09:00 7722PLN / 3174PLN
Angular JavaScript Warszawa, ul. Złota 3/11 Tue, 2016-12-06 09:00 7500PLN / 3300PLN
Test Automation with Selenium Gdańsk, ul. Powstańców Warszawskich 45 Tue, 2016-12-06 09:00 7722PLN / 3624PLN
Programming in WPF 4.5 Kraków, ul. Rzemieślnicza 1 Tue, 2016-12-06 09:00 6435PLN / 2893PLN
Graphic techniques (Adobe Photoshop, Adobe Illustrator) Wroclaw, ul.Ludwika Rydygiera 2a/22 Tue, 2016-12-06 09:00 4851PLN / 2740PLN
Docker and Kubernetes Gdańsk, ul. Powstańców Warszawskich 45 Wed, 2016-12-07 09:00 N/A / 4989PLN

Upcoming Courses

VenueCourse DateCourse Price [Remote/Classroom]
Rzeszów, Plac Wolności 13Mon, 2016-11-14 09:006800PLN / 3050PLN
Poznan, Garbary 100/63Mon, 2016-11-14 09:006800PLN / 2600PLN
Kraków, ul. Rzemieślnicza 1Mon, 2016-11-14 09:006800PLN / 3200PLN
Tarnów ul. Kościuszki 10 Mon, 2016-11-14 09:006800PLN / 3050PLN
Gliwice ul. Karola Marksa 11 Mon, 2016-11-14 09:006800PLN / 3050PLN

Some of our clients