Test Suites Are Part of the Product

This resource first appeared in issue #122 on 14 May 2022 and has tags Technical Leadership: Software Development, Technical Leadership: Testing

I just threw away a bunch of tests - Jonathan Hall
The evolution of the SciPy developer CLI - Sayantika Banik, Quantsight Labs

Related (but not limited) to ease of developer onboarding - I was just having this conversation with a friend. Test suites are code, too, and part of your product - they’re not some weird kind of “meta-code” for which the usual rules don’t apply. As Hall points out, that means keeping them documented, making them easy to run, refactoring them, and discarding some when appropriate.

As an extreme version of that, Banik walks us through the SciPy developer CLI, with tools and documentation for building, testing, static checking, benchmarking, using, and adding/editing documentation or release notes for SciPy packages. Obviously almost no other packages are SciPy, but an engaged developer community needs support and documentation, and if you’ll make tests mandatory as part of significant commits (and you should!), the test suites, and instructions for running and updating the test suites should be kept up to date.

The help screen for the SciPy developer CLI, showing options for building, testing, listing, type checking, updating release or API docs, benchmarking, and interactive use of an under-development SciPy package

<<<<<<< HEAD
======= >>>>>>> c1d069a... First pass at category pages