The Curiosity Blog

Automated Test Case Design is Key for CI/CD

Written by Mantas Dvareckas | 23 May 2022 09:19:09 Z

Continuous Integration (CI) and Continuous Delivery or Continuous Deployment (CD) pipelines have been largely adopted across the software development industry. Seen as an efficient and necessary approach to software delivery, CI/CD helps organisations deliver software rapidly. This is accomplished by bridging the gaps between development and operations and introducing automation into the software delivery lifecycle (SDLC). In fact, CI/CD methodologies have been so successful that two thirds of organisations reported an exceptional increase in productivity, quality of software, and the cost of quality when adopting CI/CD [1].

Objectives of CI/CD include increasing early defect discovery, boosting productivity, and providing faster release cycles. However, despite the adoption of CI/CD pipelines, silos remain between system designers, developers, and testers. Symptoms of this include the lingering of ambiguous and incomplete written requirements, which create bugs in code, while manual test case design and scripting force QA to roll over to the next sprint.

A truly continuous delivery approach demands greater collaboration, parallelism and automation across design, development, and testing. To achieve this, the implementation of Automated Test Case Design within CI/CD is crucial. Automated Test Case design can help QA teams avoid the complexity and repetition of manual test case creation and scripting, all while increasing test rigour and the speed of delivery.

Read our case study to discover how Eljin Productions successfully launched a business-critical payments platform and achieved an 8X increase in test creation using Test Modeller’s Automated Test Case Design!

Continuous Integration Demands Continuous Testing

The main testing challenge associated with CI/CD pipelines is matching the speed of testing processes with other stages of the SDLC. Continuous integration and delivery demand continuous testing; however, testing often relies on overly-manual processes. This applies particularly to test case creation and scripting. Today, both processes can be highly repetitive and time-consuming, while a lack of measurability means there is no guarantee of the coverage needed to deliver continuously and reliably.

A traditional CI/CD pipeline is built on interconnected components, processes and resources, which must all be functional and stable across the whole SDLC. A flawed or outdated testing model is a nightmare for developers, as it introduces rework and instability in CI/CD pipelines. In fact, 67% of organisations have said that designing and creating meaningful test cases that align with user expectations is a significant challenge when implementing continuous testing [2]. Furthermore, outdated testing methodologies within an automated pipeline will mean that builds are not rigorously tested, and risk being deployed with damaging bugs or security vulnerabilities.

If large parts of the SDLC are automated in a CI/CD pipeline, then test creation must also be automated. Additionally, for a complete solution, the problem must also be tackled at the beginning of the SDLC, in the requirements stage. The question is, then, how do you implement automated test case design and continuous testing within a CI/CD pipeline?

Design, develop, and test in-sprint with Test Modeller’s Continuous Testing Capabilities.

Automated Testing and Test Case Design

Automated Test Case Design helps organisations eliminate slow and repetitive test creation processes. In doing so, it also helps ensure the rigour of testing. Curiosity’s Test Modeller not only offers automated test case generation capabilities; it empowers cross-functional teams to design, develop and deliver quality software faster.

Test Modeller is a model-based tool which provides a comprehensive range of accelerators and connectors for building complete and optimised automation frameworks, perfect for CI/CD pipelines. These accelerators are designed to significantly reduce the time and technical knowledge needed to model complex systems, while encouraging collaboration across the whole SDLC.

The process of modelling the logic of the system further enables automated test generation, due to the logical precision of the model. Each path through the model reflects a different scenario or test case, removing the need to manually design test cases. This enables Test Modeller to automatically generate the smallest set of test cases needed to exhaustively test complex systems.

Furthermore, the models, scripts and test cases generated in Test Modeller become reusable assets, which are reactive to changes in requirements. Test Modeller automatically maintains test cases, data, and automated tests as the central models change. This provides a reliable, risk-based approach to test case design, which can be integrated into CI/CD pipelines.

Test Modeller’s automated test case design replaces the time lost to repetitive and outdated manual test creation, enabling continuous testing and therefore continuous integration and delivery.

Watch a demo of Automated Test Case Design using Test Modeller below:

 

Continuous Testing with Test Modeller

Automated test case design is a simple solution that enables true CI/CD, supporting greater collaboration, parallelism and automation across design, development and QA. Using Test Modeller makes test case design rapid, reusable, and collaborative, maximising your teams testing confidence in their releases.

With Test Modeller’s Automated Test Case Design, your QA teams know that they got the right result, for the right reason.

Read our case study to discover how Eljin Productions successfully launched a business-critical payments platform and achieved an 8X increase in test creation using Test Modeller’s Automated Test Case Design!

Footnotes:

[1] Capgemini, Sogeti (2021), World Quality Report 2021-22. Retrieved from https://www.capgemini.com/gb-en/research/world-quality-report-wqr-2021-22/   

[2] Capgemini, Sogeti (2020), The Continuous Testing Report 2020. Retrieved from https://www.sogeti.com/explore/reports/continuous-testing-report-2020/