Effective End-to-End Testing for Django
This tutorial provides hands-on experience with end-to-end testing for Django using pytest and Playwright. Participants acquire solid strategies to test common patterns in Django applications and the experience of writing a complete test suite for a non-trivial application.
A comprehensive test suite gives you the confidence to fix bugs, refactor, and add new features to your application without fear of unknowingly breaking unrelated parts of the codebase. End-to-end tests are a useful and important member of your testing toolbox, and tools like pytest and Playwright provide a robust implementation for Python developers.
The tutorial runs for 180 minutes and is completely hands-on. It covers the following topics with practical exercises that each participant completes on their own computer:
- “User contract” testing
- Pytest and custom fixtures
- Asserting DOM state
- Testing interactive elements
- Integrating your test suite with Continuous Integration (CI)
Comments From AttendeesCopy permalink to “Comments From Attendees”
I liked that it was hands-on, started with basics, and had failing tests as part of the tutorial. Seeing progression from failure to passing is really helpful for understanding what is happening in the code.
Though I am not new to testing, these techniques are new and super helpful. I’m hoping to bring this all to my team.
I liked how interactive it was. The whole tutorial was easy enough to follow, but explained some advanced concepts along the way. Being able to write, update, and run tests multiple times during the workshop was very helpful.