Modern Development: Impossible Without Automation
The normal release cycle for Rubrik Cloud Data Management (CDM) is quarterly — fast releases drive manual testing efforts through the roof. But any step in a process requiring human input has the potential to become a roadblock delays or kills productivity. To the extent possible, everything should be automated—and that includes testing. Automate the critical parts step by step, and you’ll be ready for continuous deployment.
At Rubrik, we automate as much of our testing as possible. As with any software company, it is important that we thoroughly test our product before releasing it out into the wild world of our customers’ data centers. Factoring in a quarterly release cycle — that’s not much time for development, QA, and testing. Test automation allows Rubrik to quickly and thoroughly test while maintaining more consistency. Time is freed up to work on new test cases or to debug failures while repetitive, automated testing continues.
We have found that intelligent test automation provides the following benefits:
- Consistent test environment by removing the human element
- Increased productivity and time savings
- Fast response to changing business demands
- Speedier release cycle by validating builds quicker
- Improved customer experience
The move to agile has led many teams to adopt a pyramid testing strategy that calls for automating tests at different levels. Unit testing represents the base and biggest percentage of this test automation pyramid, along with component testing. Next comes integration, or API, testing. And finally, GUI tests sit at the top. The pyramid looks something like this:
As we move up the pyramid, costs increase and the overall test run time increases. On the flip side, tests at the bottom are simpler, faster to run, and highly focused. Notice that UI testing is labeled manual/exploratory. These are kept at the end of the workflow because it requires subjective evaluation based upon interaction with the UI. Rubrik prides itself in a clean, simple, and responsive user interface, so there will always be a human that ensures high-quality interaction. This test is kept until the end to ensure that time isn’t wasted on a build that didn’t succeed in unit or component testing.
Regardless of how much testing is done, nothing tells us exactly what our customers are experiencing when using our software. This is why Rubrik continuously meets with and solicits feedback from customers about the UI, issues encountered, and new features requests. Based on information we gather, our test suites can be improved. This means that our customers act as a secret benefactor to other or new customers as we continue to improve user experience.
Testing is a crucial part of the software development continuum. It must be done properly and effectively, but it should also be a streamlined process that drives the business forward rather than a hurdle that slows everything down. The long-term benefits of test automation include scalability, reusability of common framework across the functional area, agility for continuous improvement, and shippable software to thousands of satisfied customers.
Want to learn how you can use Rubrik as part of your own automation strategy? Read Using Automation to Validate Applications and Services in Rubrik Backups.