Curriculum Review: Day 4, Software Testing
Closed this issue · 1 comments
I think this is an excellent lesson! I found the slides to be clear and well-structured, and I really liked the piazza polls, think-pair activity, and then the final group activity. I think the way you've scaffolded the think-pair activity (first example unit test mapped out for participants, and then they have the freedom to write their own tests from scratch) is especially great!
I had a few small comments regarding knowledge assumed/background info that you might consider adding:
- For slide 6 (test_radec2seppa), it would be good to explain what is happening in the assert statements (and what pytest.approx is doing), in case folks are unfamiliar with them. I don't think this needs to be written on the slide, and is something that can be discussed verbally.
- For the think-pair activity (CompareFitter), you might include some block comments above the polyfit output describing what the lin_coeffs, linear_resids, etc. variables are. This way, participants understand how to interpret and interact with these variables if they are not familiar with polyfit. Alternatively, maybe providing a link to the polyfit documentation page would be enough? Either way, I could imagine participants getting confused here if they don't know polyfit.
- For test functions in the think-pair activity: the comment "don't forget to fill in the doc string" is great for the unit tests that the participants work on. But note that the test_radec2seppa and test_run_sampler examples in the slides don't have docstrings :).
Also, note that the think-pair activity notebook has different timing in the header compared to the slides; the notebook says 10 mins of individual work and 5 mins for group sharing, while the slides say 15 mins + 10 mins.
Thanks so much Matt! Great comments. I've made the changes you. suggested to the slides and think-pair colab. Feel free to reopen if you have additional thoughts or suggestions.