Back to top

Understanding and Using Unit Testing

A comprehensive course to really understand and apply unit testing, component testing, integration testing, system testing and acceptance testing.

Duration: 2 days | Price: € 590.00


  • Good knowledge of the language used for the exercises and of OOP in general (inheritance, polymorphism, encapsulation)
  • Even if not strictly required, to get the most profit from the exercises related to unit testing is recommended to have previously followed the course Really apply OOP and design patterns


The difference between an artisanal process and an industrial process is in the reproducibility of the same within a strict degree of tolerance, with predictable and repeatable costs, times and results. Producing quality software is complicated and expensive; you can’t take a craft approach. Trying to produce software using a handcrafted process (without automated builds or testing) is very risky and expensive for the company. There are no shortcuts: developing quality code requires testing of methods, classes, components, and the system as a whole.

With the Unit Testing Course you will learn how to write automated tests for functions and classes, create code with fewer bugs and in less time. The time invested in writing unit tests will be paid back with interest. You will also improve your code documentation and produce excellent code and software.


What testing means
  • Testing Definitions
  • Testing Methodologies
  • Testing Levels
  • What to expect and what not to expect
Identify the System Under Test (SUT)
  • What should I test?
  • How should I test it?
  • How to choose the right test
Testing in practice
  • What it is and how to apply AAA (Arrange-Act-Assert)
  • Unit Testing
    • What is it and who should do it
    • Practical exercises
  • Integration Testing
    • What is it and who should do it
    • Practical exercises
  • System Testing
    • What is it and who should do it
    • Practical exercises
  • Acceptance Testing
    • What is it and who should do it
    • Practical exercises
  • Automating Tests
  • Other types of tests

A variety of tools and supporting languages will be used during the exercises. Each session may focus on only one of the following unit testing stacks:

  • Delphi / DUnitX
  • Python / PyTest
  • C# / UnitTesting
  • PHP / PHPUnit

For some exercises you will need to use Python even if the stack you choose is another.

If you are interested in other technologies or tools, you can specify that in the information request below.

Request information