top of page

Imagine...

Imagine a world... A world were provisioning of computer hardware took days or weeks, where creating software releases was painful and took days of careful planning, consideration, luck and lots of swearing, where no automated testing was taking place in the background, deployments are done manually and with lots of user error.

Imagine being a Software Tester in that environment, trust me, I've been there, done it and got the T-shirt as they say. The Testing effort is pressurised, rushed and usually a small fraction of the actual testing effort required to prove functional correctness, never-mind proving that performance of the functionality is going to be acceptable for the customer.

I've been there. NEVER AGAIN!

Testing must be a continuous effort, not something which is shoe-horned into the end to satisfy some curiosity that says "we are thorough, we test our applications before they are used by our Customers". Thank goodness for Agile which breaks Software Testing out of the traditional place at the end of the SDLC (Software Development Life-cycle) and places it front and centre during the acceptance of the development in sprints.

Now, imagine a world where all builds are tested by a suite of Unit/Functional and UI-based tests. Where creating an environment is as simple and running a command-line script. Builds and deployments are non-events as they occur everyday in the background in order to facilitate our CI/CD processes. If someone breaks a build or piece of functionality, we are aware of it due to breakages on the build server and automatic notifications to the person who broke the build as soon as the breakage occurs.

Isn't that a world worth fighting for, to quote one movie or another.

This is a world where the Software Tester can live in the knowledge that the Software they are testing during a sprint has already gone through various quality gates before they start testing the application, there is already confidence that we can focus alone on the new functionality being implemented. Where using the power of "continuous improvement", we are automating as many processes as possible gradually over-time. Where regression cycles are becoming smaller and less painful with each release and where functionality is released to the Customers faster.

Thankfully this a world I live in and I can say I am very grateful for it.

Just like climbing a mountain, its good to look down to see how far we have come. We have come an awful long way...

bottom of page