During Ben Dowen’s (@fullsnacktester) masterclass — Teamwork Makes the Full-Stack Testing, Dream Work — Richard Forjoe (@rforjoe) asked the following:
What’s your view on shift left testing and how does full-stack testing fit into that?
Ben mentioned that full-stack testing is analogous to shift-left testing. Something he also shared that I found interesting:
Developers are keen to recognise the layers they are responsible for and not.
And I wonder like, Richard, if testers are to get into full-stack testing, do they have to speak the language of shift-left?
What does that look like in practice?
If you have some experience with full-stack testing, what’s your view on shift-left testing and how it’s analogous (or not) with full-stack testing?
I consider them more or less orthogonal concepts. Shift left is more about pushing back when you get notified of a bug as far as possible. i.e.
When it’s in the hands of a customer → Staging environment manual tests by QA → Staging environment automated tests → Automated tests being run on a pull request → Tests run on a developer’s machine
The only situation in which I would say that shift left and full stack testing intersect is when one check that is slow is replaced with a check that is fast.
E.g. if I had a failing full stack test that reproduced a bug in a staging environment and it could be replaced by installing and running a type checker instead, that could be run in < 3 seconds on a developer’s machine, that would be an example of shift left.