Back To Schedule
0 -

Monday May 14th, 09:00-18:00 - Tuesday May 15th, 09:00-16:00

Writing Programs That Write Tests: Better Testing With Scala

About this Workshop

Writing tests is so... boring. And repetitive. And often, in hindsight, rather ad hoc, and therefore ineffective.

We'll learn about property-based testing using ScalaCheck: how it compares to unit testing, when is it better (or worse); learning about different families of invariants and when they are appropriate for your code; how to structure the tests using the main ScalaCheck abstractions, run them, and debug them; and how to test stateful systems.

Don't write tests! Write code that will write lots of tests!

Required knowledge

* Basic Scala
* Familiarity with basic unit test techniques

Learning objectives

Attendees will learn:

* the differences between property-based testing and traditional unit testing
* how to recognize the most common kinds of properties and encode them
* how to structure, or refactor existing tests using ScalaCheck
* debugging strategies for tests
* testing strategies for stateful systems

Please note:
The Workshops will take place at the "Hotel NH Berlin Alexanderplatz", Landsberger Allee 26, 10249 Berlin, not at the same venue as the conference

Technical Requirements

Everyone will need a laptop with Scala and their development environment of choice installed. Other material will be downloadable on the day.


Noel Welsh


is a consultant at Underscore, where he helps companies succeed with Scala. He is an author of "Essential Scala", "Scala with Cats", and "Creative Scala". He believes Strings are pure evil.

© Scala Days Europe ‐ organized by Lightbend, heise Developer, and dpunkt.verlag.