Using the book in classroom

Are you interested in using this book in your classroom? Universities are more and more focusing on software testing. Unfortunately, most books out there are either too theoretical or too practical. Effective Software Testing: A Developer’s Guide gives students a pragmatic and solid view on modern software testing practices.

How I’ve been using it

I’ve been using my own book to teach software testing at the Delft University of Technology.

The course is stuctured as follows:

  • I follow the flipped classroom model, where students read the chapters before the lecture. In the lecture, I then engage students through debates, discussions, live coding, and exercises. You can read my blog post about flipped classroom. All my support slides are available in Google Docs, feel free to use them as inspiration.

  • In the lab, students solve multiple exercises, each focusing on a technique discussed in the book: specification-based and structural testing, mocking, property-based testing, web testing, and SQL testing. We use our in-house tool called Andy to give students automated feedback. You can use the tool or just the exercises. Everything, including solutions, are in the repository.

  • Students go through a midterm and a final exam. Both of them have a similar structure. They are mostly coding exams where I give students questions similar to the ones they’ve seen during the practice. I often complement the coding questions with multiple choice questions to also capture their theoretical knowledge.

In terms of schedule, my course has nine weeks and around 14 lectures of 1.5 hours during these weeks. I try to never let them have to read more than 2 chapters per week, otherwise it’s too intense for them. I go through the chapters in the order of the book.

Although it’s mostly one chapter per lecture, sometimes I combine two chapters in one lecture. For example, I have been able to talk about design by contracts and property-based testing in a single lecture. Test code smells and web testing also often fits in one lecture.

As a complement, I invite guests to talk about their experiences with testing in between the lectures. Guest lectures are highly appreciated by the students. I often have 3-4 guests per edition of the course.

I hope this inspires you in creating your own testing course. Feel free to drop me an e-mail in case of more questions!

Who’s using it?

If you are using this book, let me know, and I’ll add you here!