Testing a book's code

Maintaining a technical book over a period of years is more challenging than many people realize. Like many software-related projects, automated testing can and should play a role in making sure a book’s code stays up to date.

Most people aren’t technical writers though, so the focus of this series is actually on all the little things that come up during the development of a test suite that covers many different kinds of programs. If you’re a technical writer, the benefits of this series are fairly obvious. If you’re not a technical writer but you want to understand testing better, you’ll almost certainly come away from this series thinking more clearly about how to test the projects you’re working on.


This series has 7 parts:

MP #76: How do you approach setting up a test suite? What kinds of things should you think about, and what decisions should you make, before writing any test code?

MP #77: How do you test a large set of basic Python scripts? How can you use parametrization to do this kind of testing efficiently?

MP #79: How do you test a game project? In general, how do you test a project that has visual output, and depends on user interactions?

MP #80: How do you test code that generates image-based data visualizations with Matplotlib? How do you validate static visual output? This post is only available to paid subscribers for the first 6 weeks. After that, it will be available to everyone.

MP #82: How do you test code that generates HTML-based visualizations, when the HTML is slightly different on every test run? This post is only available to paid subscribers for the first 6 weeks. After that, it will be available to everyone.

MP #83: How do you test a Django project, with a focus on external behaviors? This post is only available to paid subscribers for the first 6 weeks. After that, it will be available to everyone.

MP #84: What are the takeaways from all this testing work?


If you have any questions about what you find in these posts, please feel free to leave a comment and I will be happy to respond.