How to manage integrated testing for CI, CD and DevOps
The idea of agility has also pushed testing to gain a new maturity level through a cultural shift in testing practices
Great products are the result of persistent development and rigorous testing. Today, testing is critical for enterprises to gain leadership, profitability and end-user satisfaction. They demand a strategic approach and an early involvement of testing for quality, automation, predictability and cost reduction.
Testers Need to Contribute to Agility
With increasing competition and the need for early to market, agility has become inevitable. The idea of agility has also pushed testing to gain a new maturity level through a cultural shift in testing practices. Not only agility, but these factors are also pushing organisations for adoption of DevOps practices where all teams of development, testing and operations need to work together. These cultural shifts in software development process have made the life of a tester more challenging due t
1. Shorter ROI cycles
2. Different IT platforms, languages and systems are getting used for development
With all these changes, testing is now getting introduced much earlier in the development phase. Practices like automation at every stage, continuous integration (CI) and continuous deployment (CD) have now become the need of the hour.
Automation is the Need of the Hour
With time, the need for getting quickly to the market has enforced test automation to be included in the early stages of a development process. More and more organisations are realising the importance of writing test code or scripts similar to that of writing development codes. Different frameworks and tools are also getting introduced so that testers can get the maximum leverage. This entire process of test automation has shortened the cycle of regression testing, making the entire flow of CI, CD and DevOps extremely efficient.
Why an Integrated Testing Solution?
An Integrated Test Management framework equipped with multi-tool integration capabilities can support continuous integration, automated triggering of build, automated testing and results reporting, ensuring continuous delivery, and rapid deployment practices - the roadmap to achieve DevOps.
A typical Integrated Testing platform should provide the following major advantages to the entire development process of the organisation.
Enabling globally distributed teams to work on a single source of information
Tight integration with other modules of ALM
Complete support for test automation through integrations with tools like QTP and Selenium
Integration support with most popular manual testing tools like HP QC, IBM Rational Quality Manager and Test Link
Generation of different cross tool metrics and cross tool end-to-end traceability reports
Managing impacts across tools
Workflow-based automatic triggering of both manual and automated test cases from testing platform
Capability of implementing DevOps with the existing tools by a typical process workflow as shown in the figure below
Example DevOps Scenario in an Organisation
An organisation uses ITSM tool for managing support tickets submitted by customers. On ticket submission, they get automatically passed to an ALM tool for internal development as User Stories or Defects. On allotting to a sprint, developers and testers view them from IDE, SCM and test tool. Once coding is complete and codes get checked in at an SCM tool, an automatic build gets triggered using Build tool. Upon successful completion of the build, it can be automatically deployed using deployment tool and automated tests can be executed through a test automation tool. Test results can be captured and linked to the test cases. Defects get raised in defect tracking tool for those failed test cases can be integrated through an integration hub.
While connected to an integrated testing platform, users gets a complete visibility of test-related records and their interrelationships from within their own tools, thus achieving CI and CD. Developers, testers and help desk manager get complete traceability of the development artifacts as well as automatic update for any internal progresses by other teams - thus providing real-time collaboration among cross-functional teams.
Soumanil Chowdhury is manager-solutions & services at Kovair Software