When we meet with prospective clients, we like to ask the overarching question, “What are your main pain points with QA and testing?” Typical responses include not having enough people or enough time. However, the biggest and most common pain point across the board is how extremely time-consuming test case management is, specifically with regard to test case creation and maintenance.
Organizations deal with rapidly changing business goals on a day-to-day business. To meet end user expectations, continuous deployment is necessary. This means QA and testing teams are almost always working with an agile software development environment. Test case management now requires an accelerated, flexible development model.
For instance, instead of quarterly releases, we now hear some clients tell us they’re pushing code either twice a day or every two weeks. Each time this happens, testers have to go back into Selenium and create/re-create test cases – a technical specification that determines whether an application performs as specified in the requirements – from scratch. This itself causes a delay in the software development life cycle.
Couple that issue with the fact that they have more than 1,000 test cases to create and you have a time management nightmare on your hands. With systems increasingly more complex, it can take upwards of six hours to create a test case. Moreover, to meet product requirements, test cases are more comprehensive and more detailed than they once were.
So, where does your test case management issue go from here?
Perhaps, you’re thinking you might be able to outsource the problem. Well, think again. For most, outsourcing isn’t an option. With tight deadlines, constant communication is required. Something that just isn’t always possible when the rest of the QA and testing team are across the sea. If you do decide to outsource, then there’s the risk that deliverables will not arrive on time or meet the expected requirements. This often means teams are spending their time reworking what was created, which increases costs and runs the risk of going over budget.
To help take the creation time down and design a more effective test case management process, while maintaining a high quality product that meets end user needs, an enterprise-grade platform is needed. One that not only provides automated functional testing in the cloud, but also has smarts built-in.
Cloud Testing – Using the cloud infrastructure for automated software testing provides an elastically scalable IT capability. This allows the QA and testing team to execute as many test cases as possible in a short period of time. Additionally, while devices may break or the power may go, you can count on the cloud to never do so. In other words, the cloud is always available to run test cases whenever needed. Furthermore, regardless of where a team member may be (e.g. vacation, sick, leave), they can continue to access test cases and perform their job, helping the team as a whole without delaying schedules.
Machine Learning – Often times, when changes are made to the system, tests (e.g. regression testing) that are performed will typically result in failure. For example, say an element visually changes, but the function remains the same. The test case may show this as an error, but the website or application will still function correctly. However, machine-learning algorithms can detect these changes and know that the application is still functional. The more test cases you perform, the more the algorithms will learn and adjust accordingly. This results in faster product development and innovation, while reducing maintenance of an already existing product.
We live in a world that is increasingly more and more dependent on software. The ironic part, though, is that the tools and processes we use sometimes are primitive comparatively. To develop and maintain high-quality products at the current rate that is expected is a challenge. Test case management shouldn’t be as all consuming as it is now. Utilizing a platform that can drastically reduce the time spent on test case creation and maintenance is key to trustworthy results, faster development and increased innovation.