To deliver software releases faster to keep up with DevOps, continuous testing has moved into the forefront as a key enabler to streamline software development and automated testing practices. By shifting left, you can integrate automated testing into each stage of the development cycle, find defects earlier in the process while improving the quality of each software release candidate.
On March 1st, Keysight kicked off the Optimize DevOps with Continuous Testing Bootcamp to discuss the latest software development and automated testing trends. The bootcamp showcased the combination of DevOps and continuous testing best practices integrated into CI/CD pipelines to streamline delivery and improve quality across release cycles.
You can continue to learn and benefit from these valuable DevOps and test automation insights delivered from our industry experts by accessing the bootcamp’s on-demand content here. Read on to hear more about the key questions and takeaways the bootcamp addressed.
What’s next for DevOps? How can testability help to optimize the software development lifecycle?
The bootcamp keynote speaker featured, Emily Freeman, the author of DevOps for Dummies and head of Community Engagement for AWS, discussing her Revolution model to better address the growing complexity and challenges facing development teams and representing a new approach to modernize the software development lifecycle.
The Revolution model is constructed with concentric circles for the critical software development roles including architecting, developing, automating, deploying and operating. These circles are intersected by 6 spokes: testability, securability, reliability, observability, flexibility and scalability, that represent the production considerations engineers will need to consider throughout their work.
The first of these important considerations is testability described as the fundamental testing of all software systems required to assure software designs, code and infrastructure are working as designed. This concept highlights the importance of a continuous testing strategy that enables you to automate and integrate tests for software changes as they are merged into your CI/CD pipeline. This permits early validation of functionality within the software development lifecycle, minimizes risks and enables accelerated delivery and deployment of new features.
How do you optimize DevOps for modern application development?
Optimizing DevOps requires best practices that you know will work. Using real world experience, Deepty Chauhan, GM of Keysight’s Atlanta Software Design Center, shared DevOps best practices to be applied to CI/CD pipelines to ensure your success. The perfect recipe combines Agile + DevOps + Automation to transform the application development environment to deliver quality software at speed.
The key continuous delivery principles covered included creating a repeatable process to release software, automate almost everything and using continuous automated testing to build quality throughout the entire development process. How does continuous delivery and DevOps work together? Continuous delivery is a software delivery model from code commit to production while DevOps is all about how to make it all work.
Some great results seen from a real Keysight DevOps case study, including 9x faster releases, 8x quality improvement, and 40% reduction in test cycles. To hear more details about these DevOps best practices, be sure to tune in to Deepty’s session in the bootcamp on-demand content.
Can continuous testing keep up with complex and faster release cycles?
With agile development, continuous testing is critical to keep up with rapid DevOps releases. By applying continuous testing best practices, application development and QA teams can better align to adopt automated testing strategies throughout their CI/CD pipelines and deliver applications faster with improved quality.
Ethan Chung, Keysight’s Solution Architect Manager, discussed how to scale your automated testing efforts with Keysight Eggplant test automation software to expand your testing coverage across complex applications. Using Eggplant, you could utilize an AI model-based automated testing approach to enable building sophisticated test cases that can integrate with any DevOps pipeline and fast track your automated testing success.
How do you implement continuous testing into your environment?
To make testing an integral part of each stage of development, integrating continuous testing into your CI/CD pipeline is needed so that tests can be conducted as soon as new functionality is implemented.
Philippa Merrill, Senior Technical Consultant for Keysight, provided a technical breakout session demonstrating how to integrate Eggplant test automation into your build and release pipelines using continuous integration tools, such as Jenkin, Azure Pipelines, etc., as well as seamlessly integrate test scripts into a Jira automation tool. This integrated test automation strategy ensures quality software release candidates are constantly being evaluated throughout the development process through to deployment.
What is the importance and benefit of full stack testing?
Testing modern applications introduces new challenges with the need to verify results from the user interface through to the backend database to ensure data integrity across the full technology stack. The testing of all these technology layers would typically require the use of multiple testing tools and approaches.
In another bootcamp technical session, Kieran Leicaster, Technical Consultant for Keysight, demonstrated how you can adapt your testing strategies using Eggplant’s Fusion Engine to test real user scenarios and validate a complete application workflow across the front end (UI) through to the back end (API, database) integrations. The demonstration highlighted how Eggplant can provide end-to-end user experience testing with a single integrated testing tool to build and consolidate test scripts spanning across the full technology stack.
Transform with Continuous Testing to Deliver Quality Software Faster
Combining DevOps with continuous testing creates the right software development framework to enable the use of automation to build, test and deploy modern applications. This helps to promote quality throughout the development process and allows you to keep pace with rapid DevOps release cycles while maintaining high overall quality.
To learn more about how you can optimize DevOps with continuous testing, check out the continuous testing bootcamp content or download our continuous testing solution brief.