3 ms·
> atomic tests, meaning tests that don't depend on global state or the state of other tests We normally call this "hermetic", not "atomic".
by tantalor 11y ago
> atomic tests, meaning tests that don't depend on global state or the state of other tests
We normally call this "hermetic", not "atomic".
- geoelectric 11y agoTest automation professional here. "Hermetic" means not relying on the performance of resources not under test, such as an external server. You get away from that with a combo of test doubles, fake servers, or real servers running on test localhost/cluster and strictly under that machine's control. "Atomic" isn't really a standard term in testing as much as "hermetic" is (though I haven't heard "hermetic" much either until recently when Google Testing Blog started popularizing it). Edit: googling "atomic unit test" shows that it's used more widely than I thought. But generally, just by what "atomic" means (stands alone), I would interpret that to mean not sharing state between tests--i.e. nothing where the last test creates your fixture and your next test uses it, or multiple tests together form a sequenced scenario. QUnit uses it that way too, for example: https://qunitjs.com/cookbook/#keeping-tests-atomic https://qunitjs.com/cookbook/#keeping-tests-atomic Of course, your group might normally call that "hermetic," but you'd be out of step with most others.