**Unit tests**: tons of formalizations, tons of tools **Integration tests**:...
**Unit tests**: tons of formalizations, tons of tools
**Integration tests**: ... uh you're on your own... maybe just never do any integration tests...
Self-replies
I think if there was an integration test tool, it would:
- Have 1 tool per thing that holds state (db, redis, file system)
- That tool would reset state between runs
(Fixtures exist but those are place you can put code, not the code that goes in a fixture)
Now I'm going to go search pypi and see if this idea has already been done 25 times
Another thing about integration tests is the add more test statuses
- code is bad (failed test)
- server wasn't available (code is indeterminate quality)
- code is good (everything worked)
Because of the indeterminancy, integration tests need to be separated from pure unit tests & run on a different interval & have a different policy when they are indeterminate, cf pure unit test failures which should always fail the whole build.