I had a lot of tricky tests to write today that needed mocks against an async SDK.
To get started, I tried out GitHub Copilot "generate tests".
Observations:
=> More informations about this toot | More toots from pamelafox@fosstodon.org
So I eventually modified most tests to "my style" with monkeypatch.setattr whenever possible.
I'm still grateful for Copilot's help since:
=> More informations about this toot | More toots from pamelafox@fosstodon.org
I'm curious what style mocks y'all prefer! should i be magic mocking more??
=> More informations about this toot | More toots from pamelafox@fosstodon.org
@pamelafox I’ve done a lot of mocking in Python and other langs and I am changing my practice. Beyond specific types of fault injection or obscure branch behavior checks, I want to be using fakes. A lot of rework in my past could have been avoided if I wrote my tests as integration tests against multiple modules rather than unit tests a function at a time. I am now trying to enable that through accurate behavior fakes at the right levels of my applications so the tests work against a “real” flow of the code (like using moto instead of MagicMock). The Google SDEV handbook has a good section on testing that speaks to this philosophy (it’s a little over-declarative and chest thumping, and written for a Java shop, but the discussion has a lot of insights)
=> More informations about this toot | More toots from joshrivers@techhub.social
text/gemini
This content has been proxied by September (3851b).