Automated Testing and Test Driven Development for Developers (3 days)

This workshop covers all aspects of automated testing in Python.
It focuses a lot on two methodologies: Test Driven Development and Behavior Driven Development.
It covers test isolation, mocking, a wide range of testing frameworks and tools (unittest, doctest, nose2, behave, nose2.tools.such, webtest among others) as well as code coverage and an overview of unconventional testing approaches.

At this workshop you will learn:

  • How to start writing tests?
  • How to isolate your tests from external resources, like databases, sockets or even external APIs?
  • How to start testing systems consisting of multiple modules?
  • How to refactor code?
  • How to test web applications?
  • What tools, libraries and framework are available in Python and how to choose the correct one?
  • How outside-in development style helps you create better code.
  • How to write plain-text stories in Gherkin, so that non-developers can read your tests?
  • And many, many more.

Check out the detailed course syllabus

1. SOLID

2. Code Refactoring

3. Builtin Testing Frameworks

4. Test Driven Development

5. ​​​​Test Isolation and Mocking

6. Testing Web Applications

7. Overview of Other Testing Approaches and Code Coverage

8. Outside-in Development

9. ​​​​Plain-Text Stories in Gherkin.

10. nose2.tools.such DSL

11. Behaviour Driven Development

Your Trainer - Chris Mędrela

  • Certified Instructor of both Software Carpentry and Data Carpentry, leading organizations providing workshops for scientists and researchers.
  • Open Source contributor - creator of System Check Framework introduced in Django 1.7 in 2014.
  • Delivered workshops for corporations (Nokia, Ericsson, Motorola, Allegro and more) and public sector (Office for National Statistics, Aarhus University).
Your Trainer Chris Mędrela