Today’s test automation technology in general relies primarily on the test object recognition aspect. This means that any testing tool is required to identify test objects of the application under test (AUT) and successfully recognize it during creation of the script and its playback. Conventional test automation technologies developed are based on API object recognition, where each singular client API's is correlated with the testing tool technology’s test object class. In the modern testing world, this approach is insufficient due to the existence of a variety of different clients for one application under test - ie browsers, client-server applications, etc. With most tools, you can only recognize one set of objects per script per AUT. Therefore, if you are automating different clients of the same applications (which may be different browser flavors or different version of client or native mobile apps) you will, in most cases, need to recreate the script. This approach tremendously increases maintenance requirements of test automation framework and makes it very costly and many times more impractical. This inevitably forces many organizations to roll back to manual testing rather than supporting test automation.
The solution for this challenge is visual based object recognition technologies. Visual based object recognition is the future for test object recognition in the modern software application development and testing world. It contains algorithms built on OCR (object character recognition) and ICR (image character recognition). This type of algorithm is what the ZAP-fiX solution is based upon. Technology based on visual based object recognition allows testers to execute scripts cross-client and cross-platform. When talking about visual based object recognition technologies, it’s very important to understand the level of object recognition. The majority of them are driven through the tool’s built-in functionality rather than sets of API’s that can be prescribed in a singular line of code. Visual-based object recognition is more reliable in many cases depending on the complexity of its algorithms. When speaking about API vs. visual object recognition, test engineers should change their approach to automation and think of less complex techniques unlike programmatic description and custom object recognition functions. Using the built in functionality of tools reduces the complexity of scripts and lines of code per scripts which, at the end of the day, reduces their required maintenance and time spent on managing such test automation framework. Instead of depleting the company’s budget and causing the failure of testing projects, selection of the proper testing tool that allows cross-client and cross-platform automation with less scripting increases return investment from software test automation.
In conclusion, in order for us to successfully cover the modern requirements for software testing, we need to start building test automation technologies that support the newest features. Today, software has changed from a standard, single, Windows-based platform to multiple platforms, and we – as test automation professionals – need to start adapting to the world using the latest technology that offers the ability to switch between all of them. Visual object recognition is the future of test automation!