> TECHNOLOGY > ENTERPRISE APPLICATIONS

The future of testing - How testing and technology will change
Joachim Herschmann
25/01/2010

During these challenging economic times, there is a dramatic increase in the desire of Quality Assurance (QA) professionals to understand better where the software testing industry as a whole is heading and how testing processes and the technology involved will most likely change. There is no doubt that in coming years test and quality professionals and development organisations will be under ever-increasing pressure to test better and test faster. It will require software leaders to change the way they think about the quality professionals’ role, test technologies and processes.

A new quality consciousness
Today, there is a high visibility of quality - or the lack thereof - in the public and a higher consciousness for it. This starts to drive a much higher need for alignment of business needs and engineering needs from the start. Obviously, it will have an impact on the testing approach. In the past we have seen engineering-heavy approaches where not much outside of the immediate code development activities were considered from a quality perspective. Now, we start to see an emerging approach of a risk-based/quality-conscious view, which takes into account additional parameters. Business begins to drive quality requirements more directly through a stronger connectivity and traceability between requirements, developed features and required tests. With this comes a stronger demand to deliver increasing value in highly specialist skill areas, such as Test Automation, Performance Testing and Security Testing. It drives the need for more skilled QA professionals that know how to collaborate and build more advanced and larger test sets.

Expanding the tester skill set
There are other drivers, as well. Anyone who has been involved in agile projects will quickly realise that traditional testing approaches will not work particularly well here. One of the first thing agile teams will recognise is that test automation will be indispensable in environments where short sprint cycles are becoming a key element of the development strategy. This means that there will not only be a much stronger demand for test tools that can provide a high degree of automation, but also a need for highly skilled and more technically competent testers. The days of purely manual testing or simple click testing tools that required little or no technical knowledge from a tester are definitely over. Even accomplished testers must expand their skill set to include virtues like strong collaboration capabilities as cultural aspects become much more important. It will be necessary to adapt to agile development practices and become a member of “the team” as the Dev/Test barrier gets removed. Most importantly – and many a tester will not like this perspective – it will become important to develop programming skills and get involved in test conception from the beginning.

Test automation
Tools for test automation have been around for quite some time, mostly in the areas of performance testing and functional and regression testing. However, overall, test automation has not yet lived up to its promise. In the earlier years, test tools were not particularly mature and required a substantial amount of effort to build robust test automation sets. Skilled test automation experts were rare, and inadequate usage of tools didn’t help either. Additionally, technologies evolved quickly and tool vendors sometimes had a hard time keeping up with technology trends.

However, tool vendors have learnt their lessons and tool sets are maturing. From today on, pretty much all types of testing will require a higher degree of automation if carried out as part of a rapid development scenario where testing is highly integrated. This will be a strong driver for tool vendors to improve the maturity of their testing tools.

Automation tools and technologies they support
Looking at test automation tools, one can distinguish between specialised tools for specific technologies and versatile tools covering multiple technologies. The first category includes tools that allow for testing more or less just one type of technology, such as Java. While these tools usually do a pretty good job of testing that particular technology, they are useless for everything else.

However, applications often use different technologies. For example, a Web app might have Flex technology embedded, or a Java app might contain an embedded IE control. In such cases, testing require either multiple (potentially incompatible) tools or a mixed approach of manual and automated testing, both of which are far from desirable. Also, the replacement of technology will leave test sets useless. Nevertheless, such tools will continue to be around and they will be useful in certain cases. However, none of them is likely to become mainstream for the reasons listed above.

Testing tools that support multiple technologies on the other hand allow for testing of mixed technology applications. They provide a seamless testing experience and allow for much more holistic, realistic and robust testing. There is a much higher chance that less or no manual testing is required and, more importantly, technology change usually does not turn test sets unusable. Of course, for single technology applications they provide all of the above and they can usually be reapplied for other technologies quickly. As a consequence, these tools will become more sophisticated and will become much better integrated with other tools to support collaboration.

Summary
One of the most interesting trends we are starting to see is that testing is finally becoming more aligned with business needs. Strategies like test-driven development are a manifestation of this, but there is still plenty of room for improvement. There is a growing understanding that quality will become everybody’s responsibility in the future, and more and more organisations start to look at quality more holistically. However, we are just seeing the very beginning of this right now. With agile development strategies and the faster development cycles that come with it, test automation will become much more important. Without good, robust test automation it will be impossible to keep quality up, let alone improve it in such environments.

- Joachim Herschmann, Product Director Test Automation, Micro Focus.

 

advertisement


Sponsored Links
Buy Sell Rent a HOME Call 96562416 (Kenneth) for your property needs. Free Valuation. Property Investment Advice.
Exploit Technologies Breakthrough Technologies Available for Licensing
USONYX Affordable and Reliable Web Hosting Solutions 
   

Copyright © 2007 ConvergenceAsia.com. All rights reserved.