Talk from the Tech Trenches: Test Surface Tactics

by Dmitry Kirsanov 24. November 2023 04:00


Purpose, Perspectives, and Principles of Test Automation

We are embarking on a thrilling journey into the inner sanctum of testing, with a keen focus on the marvel that is test automation. So, fasten your seat belts, ensure your trays are in an upright position, and prepare for take-off, as we glide through the vast expanse of this intriguing and highly relevant topic.

The Reason for Being: Automating Tests

As we soar into the stratosphere of this discourse, one question begs to be asked: Why do we automate tests? If your answer gravitates towards the “because everyone else is doing it” orbit, I hate to be the one to break it to you, but that doesn't pass muster in test automation circles. It's akin to skydiving without a parachute - sounds thrilling until you remember gravity. Test automation, like any thoughtful process, requires a well-grounded motive.

A popular impulse for delving into test automation is accelerating regression testing. A legion of pre-existing features clambering for attention with every fresh update adds quite a load to the already hefty task of testing. Here, one could argue, is a solid sense of purpose that justifies automating tests. But this is not the whole story, for the world of test automation possesses a multitude of potential purposes that we will explore on this journey.

Where to Target: A Forgotten Narrative

Another critical aspect is the surface of interaction, or the part of the application that needs testing - a conversation that toyed with the sands of forgetfulness a tad too often. The question of the target layer for testing based on the specified goals and intent should be a fundamental consideration in the grand scheme of things.

The Technological Tango: The Means to Implement Automation

The plot thickens with the technology used to implement the automation. The programming language, the tools employed - all contribute to the dynamic drama of test automation. Our limelight falls on test surfaces, a character often overlooked yet pivotal in the narrative.

Test Surfaces: The Kobe Steak of Test Automation

Savor the idea of software systems through the perspective of test surfaces. This culinary delight isn't limited to test automation; it equally caters to human-interactive testing. Why so, you ask? Primarily because it delineates the tools you'll need for the automation. Pro Tip: understanding a software system or a proposed system's architecture at a high level is the secret ingredient here.

Cracking the Code: Interactivity & Inspection

Enjoy a moment's reflection over this thought: what makes a test surface? The answer lies in the binary aspect of interactivity and inspection. An interactive test surface nudges the application into revealing its state. An inspectable surface, on the other hand, can only divulge information. In your pursuit of test surfaces, marking the ones that support interaction and inspection is akin to paving your path to more efficient testing.

Choosing the Champion: Deciding Based on the Purpose

With numerous potential test surfaces and only a limited use case, the dilemma of choice challenges us. In the arena of test surfaces, how does one select the victor? The answer typically echoes from the caverns of the test's purpose.

Don't just Swim, Dive: Multiple Test Surfaces

Remember, it's not a binary choice. A functional system is a blend of features and interfaces, each deserving its separate set of tests. Choosing your test surface should align with your testing goals and comply with the available technology. Now, it will also depend on the tester, the team, and the company's overall experience and support level for the said set of tools and technologies. The more, the merrier, and also, the more insightful.

The Trilogy: Purpose, Test Surfaces, and Technology

As the curtain falls on this segment of our journey, we understand that our choices for test automation should be shaped by a trilogy of considerations: purpose, test surfaces, and technology. We hope you are as excited as we are to dive deeper into this in the coming lessons.

Until then, keep testing, exploring, and innovating.



blog comments powered by Disqus