
Test-Driven Development with Python
Obey the Testing Goat: Using Django, Selenium, and JavaScript
Harry Percival(Author)
O'Reilly (Publisher)
3rd Edition
Published on 11. November 2025
Book
Paperback/Softback
722 pages
978-1-0981-4871-3 (ISBN)
Description
The third edition of this trusted guide demonstrates the practical advantages of test-driven development (TDD) with Python and describes how to develop a real web application. You'll learn how to write and run tests before building each part of your app and then develop the minimum amount of code required to pass those tests. The result? Clean code that works.
In the process, author Harry Percival teaches software and web developers the basics of Django, Selenium, Git, JavaScript, and Mock libraries, along with current web development techniques. This book-updated for Python 3.14 and Django 4-clearly demonstrates how TDD encourages simple designs and inspires confidence.
Fully updated, this third edition addresses:
The TDD workflow, including the unit test/code cycle and refactoring
Unit tests for classes and functions and functional tests for user interactions within the browser
Mock objects and the pros and cons of isolated versus integrated tests
Testing and automation of deployments with a staging server
Tests applied to the third-party plug-ins you integrate into your site
Automatic tests using a continuous integration environment
Using TDD to build a REST API with a JavaScript frontend interface
In the process, author Harry Percival teaches software and web developers the basics of Django, Selenium, Git, JavaScript, and Mock libraries, along with current web development techniques. This book-updated for Python 3.14 and Django 4-clearly demonstrates how TDD encourages simple designs and inspires confidence.
Fully updated, this third edition addresses:
The TDD workflow, including the unit test/code cycle and refactoring
Unit tests for classes and functions and functional tests for user interactions within the browser
Mock objects and the pros and cons of isolated versus integrated tests
Testing and automation of deployments with a staging server
Tests applied to the third-party plug-ins you integrate into your site
Automatic tests using a continuous integration environment
Using TDD to build a REST API with a JavaScript frontend interface
More details
Edition
3rd edition
Language
English
Place of publication
Sebastopol
United States
Product notice
Paperback (trade)
Unsewn / adhesive bound
Dimensions
Height: 232 mm
Width: 175 mm
Thickness: 38 mm
Weight
1208 gr
ISBN-13
978-1-0981-4871-3 (9781098148713)
Copyright in bibliographic data and cover images is held by Nielsen Book Services Limited or by the publishers or by their respective licensors: all rights reserved.
Schweitzer Classification
Other editions
Previous edition

Harry J. W. Percival
Test-Driven Development with Python 2e
Obey the Testing Goat: Using Django, Selenium, and JavaScript
Book
07/2017
2nd Edition
O'Reilly
€89.32
Article exhausted; check for reprint
Person
After an idyllic childhood spent playing with BASIC on French 8-bit computers like the Thomson T-07 whose keys go "boop" when you press them, Harry spent a few years being deeply unhappy as a management consultant. Soon he rediscovered his true geek nature, and was lucky enough to fall in with a bunch of XP fanatics, working on the pioneering but sadly defunct Resolver One spreadsheet. He now works at PythonAnywhere LLP, and spreads the gospel of TDD world-wide at talks, workshops and conferences, with all the passion and enthusiasm of a recent convert.