Successful organizations are putting demands on the IT department for faster responses to changing market and regulatory requirements. Innovative techniques to meet this challenge have gained prominence in the past few years including Agile Project Management, DevOps, and Continuous Integration. This has enabled IT to deliver quicker release cycles and respond better to changing requirements.

CTC provides a unique service – Test Automation (TA) – that complements these developments and benefits our clients with lower costs for both development and Operations and Maintenance (O&M), and by delivering quicker releases of software code with fewer defects.

CTC’s Test Automation teams are committed to providing our clients with the highest quality service at the best overall value. In addition to the cost savings, the Test Automation process produces detailed reports which are then used to gather lessons learned and inform future sprints and IT investment decisions.

CTC is skilled in a variety of TA tools and we use the test automation software most appropriate for the overall software stack. Several of our Test Automation teams are also incorporating leading edge tools that enable Business Analysts to document requirements and tightly couple those with Test Plans.

Additionally, CTC prepares detailed reports to validate software development progress with pass/fail indicators that the product owner and development team can use to make a go/no-go decision. Eventually, this results in a determination of whether the deployment is stable enough to be released to the end users.

Early testing
One of the main objectives of testing in DevOps is early detection of defects in the development cycle. For this to happen, testing must begin very early in the cycle. QA begins testing with whatever code is available even if the features are not complete. This requires a lot of maturity in documenting self-sufficient user stories that do not depend on another for testing.

Build verification
As DevOps encourages frequent builds, there is a higher possibility of code breaking existing features. For this reason, it is not practical to have testers do this verification manually. CTC has added these automated tests as part of our build process.

Test coverage
In DevOps, there is a rush to deliver software quickly with techniques like continuous integration and deployment. Also, because of rapidly changing requirements, there is a possibility to miss testing of critical functions. To overcome this challenge, CTC performs a thorough and detailed traceability of requirements to test these functions.

Case Study

Behavior-Driven Development (BDD) is increasingly popular and aimed at testing the behavior of the entire application instead of just the individual units. Cucumber – a framework used for testing – is compatible with BDD. For CTC’s DATIM project, this approach is used to write acceptance tests for the applications while allowing the automation of functional validation in an easily readable and understandable format for Developers & Testers. The software is used along with a suite of automation test tools like Selenium. In this era of technology, applications depend on well tested, well designed, developed, and well-documented API. Cucumber has been used for the full-cycle testing and quality assurance services for our web application. The custom dedicated QA teams have been offering independent quality engineering and a wide range of financial software applications for the Department of State.