4 ms·
>This often involves making the dependencies you inject during testing some more complete simulations of real implementations. Takes more up front effort to imp
by MoreQARespect 3y ago
>This often involves making the dependencies you inject during testing some more complete simulations of real implementations. Takes more up front effort to implement them, but can often be re-used between many tests.
At higher levels, the up front effort is higher but most of that work that is much more reusable - reusable across implementations and different languages, even.
With tools like playwright and MITM proxy, the state of the art for these highly reusable tools has moved forward considerably in the last 5 years. I can now "TDD" everything in a way that actually makes sense on some projects - even a tweak in CSS (via snapshot driven development).
Meanwhile CPU power has also kept accelerating to the point that hermetic end to end tests that were unbearably slow can now be run on a laptop in seconds. Entire suites that used to take hours on CI can be trivially parallelized and run in minutes instead.