Welcome to Part IV of our “Ultimate DevOps Tools Ecosystem Tutorial.” In this blog post series, we are covering the top DevOps and development process tools. In Part I, we introduced the DevOps work cycle. It’s divided into five stages: Plan, Develop, Test, Release, and Operate. You can see the complete infographic here:
Testing examines the product and service and makes sure they work in real time and under different conditions — even extreme ones, sometimes. This stage requires many different kinds of tests, mainly functional tests, performance or load tests, and service virtualization tests. It’s also important to test compatibility and integrations with third-party services. The data from these tests needs to be managed and analyzed in rich reports, for improving the product according to test results.
Here are some of the top tools in the testing stage.
Load Testing: JMeter
JMeter is the most popular open-source load testing tool. JMeter enables users to create a test scenario that contains the actions and requests they want to test on their website or app. Then, the can modify it according to their business needs with elements like ramp-up time and timers, run it for multiple users, and examine the results.
Pros: Open-source, easy to use, robust, has a vibrant and involved support and development community, has multiple plugins, and integrates with Continuous Integration tools like Jenkins.
Cons: Requires downloading, limited scalability, limited reporting, and creating a test scenario can be meticulous.
Click here to see a comparison of different open-source load testing tools.
Load Testing: CA BlazeMeter
CA BlazeMeter has all the abilities JMeter has since it’s an enhanced and upgraded version of JMeter.
Pros: Scalability (JMeter in the cloud), advanced reporting, collaboration options, and multiple plugins and test recording features.
Cons: Not open-source.
CA BlazeMeter reports:
Functional Testing: Selenium
Selenium is an open-source functional testing tool that automatically tests browsers and enables the testing of web applications.
Pros: Open-source, supports a variety of languages, operating systems and browsers, records scripts (through Selenium IDE), and works with JMeter.
Cons: Requires high expertise to use, does not support windows based applications, and lacks online support.
Functional Testing: Perfecto Mobile
Perfecto Mobile is a functional testing tool for mobile apps that runs automated app tests on real devices.
Pros: High optimization and accuracy due to running tests on real devices.
Cons: Testing speed can be slow.
Service Virtualization: CA
CA Service Virtualization creates virtual assets that enable developers and teams to work in parallel on their systems without having to write code to duplicate infrastructure or dependencies.
Pros: Quick setup and integrates with testing and Continuous Integration tools.
Cons: On-premise and heavy-weight.
We’re more than halfway through the DevOps cycle! Next time, we’ll discuss the release stage, so stay with us.