2 days


Unit Testing Training
with Codeception

Effective testing of business expectations
2 days workshop from Codeception founders

Register Learn more

Most of unit testing tutorials just show how to start writing basic unit tests. However, implementing unit tests in heavy enterprise architecture can’t be that simple. This training will guide you from basics to advanced, introducing students to unit, functional and integration testing concepts.

Unit tests test system component in isolation, integration tests act as concrete to verify integration between different parts of a system. Functional tests run on top of a PHP framework (Laravel, Symfony, Zend, Yii) and cover the system from upside, using public interfaces. We will also cover TDD, BDD, ATDD concepts, to learn how to build test before the code, to design scalable and testable application at first.

We will help Codeception as the only tool to incorporate all levels of testing and provide highly effective API for writing and maintaining PHP tests.

Target audience
Course type
2 days
Course duration
10 persons
Average amount in a group
Course level
Theory / practice
Onsite, online
500€ 700€
Fee per participant

Workshop agenda

General overview

General overview

– The purpose of automated testing
– Testing styles: blackbox and whitebox testing
– Different testing levels: unit / integration / functional
– Business specification to drive a test
– Testing domain logic
Testable Code & Architecture

Testable Code & Architecture

– Unit test for pure functions
– Writing testable code
– Test Driven Development (TDD)
– Data Providers
– Managing test dependencies
– Mocks and stubs
– Cyclomatic complexity and unit tests
– Refactoring legacy code
Integration & Unit Testing

Integration & Unit Testing

– How to prioritize what to test
– Testing business logic
– Integration tests vs Unit tests: when to use which
– Handling external services in integration tests
– Test data management: factories, fixtures
– Collecting code coverage
API & Controller Testing

API & Controller Testing

– Controller Testing with Functional Tests
– REST API testing as functional tests
– Writing readable test scenarios
– Extending Codeception


We expect experienced PHP developers, middle & senior levels.

– PHP 7.0+ with Xdebug installed
– Git client
– Composer
– JetBrains PhpStorm or Netbeans as IDE
– Codeception

Our company works according to the principle of individual approach to every client. This method lets us to get success in problems of all levels. Contact us if you need post education support

– Create unit test using TDD approach
– Building unit and integration tests for user registration
– Implementing integration tests for a real application
– Functional tests for Laravel-based application
– REST API functional tests for Laravel-based application


Michael Bodnarchuk

Codeception founder and tech consultant.

Michael works for Codeception, CodeceptJS and other open-source projects aimed to automate testing and make testing easy and fun. By developing his product he gathered experience from wide range of companies and individuals who are using Codeception.

He always tries to show the wider picture of testing. He believes that tests should be easy to read, write, and maintain.

Michael is also a frequent speaker at PHP (Dutch PHP, PHP Benelux, …) and Test Automation conferences.


10% discount for groups of 8 people or more

    Within one week after the application you will receive a confirmation email only if you are admitted. A maximum of 12 participants will be accepted.

    Contact us:

    If you need to get in touch with us, send a note to or follow us on facebook for more updates and details. SDClabs accomplished 30+ projects and accumulated a lot of niche expertise and knowledge. We are ready to share our experience to help you achieve more. Currently we are working on new test automation and devops courses. Soon it will be available here as separate pages. Meanwhile you can contact us if you want to get these trainings:

    Selenium WebDriver for beginners
    Selenium WebDriver advanced
    Selenium WebDriver on Java
    Selenium WebDriver on Python
    Selenium WebDriver on Ruby
    Android mobile test automation
    iOS mobile test automation
    Full stack mobile test automation
    BDD explained on details
    Cucumber on java
    API test automation on java, python, ruby, c#
    Test automation infrastructure (Docker, Kubernetes)
    Codeception web test automation Advanced
    CodeceptJS web test automation Advanced

    Check out awesome courses

    Let us help you take development and test automation further. We offer a number of trainings that can help you and your organization get the most out of our enterprise support. Request a quote at