Tagged in

software development

Rubrik -  - Modern Development: Impossible Without Automation

General Tech

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…
Rubrik -  - How We Built a Suite of Automated End-to-End Tests


How We Built a Suite of Automated End-to-End Tests

Last week, I covered the importance of quality and why we employed automated end-to-end testing. In this post, I explain how we implement this approach. We do so through a release pipeline orchestrated by Jenkins to efficiently run a large suite of end-to-end tests. These tests leverage our custom testing framework which integrates with support tooling. As we receive customer feedback, we continuously update the framework and test cases to keep up with the latest requirements. Below, I describe in more detail our release pipeline, testing framework, and product support functions that ensure our testing is faster, more efficient, and always high quality. Jenkins Continuous Integration Like many engineering organizations, we use Jenkins as our continuous integration tool. As engineers check in new code, Jenkins is continuously running the suite of tests we built, including both unit tests and end-to-end tests. This allows us to quickly detect and correct issues. Release Pipeline If we ran every full test for every code check in, we would quickly exhaust all our test resources and file duplicate bugs. Although we can easily add more test resources, duplicate bugs waste engineering time by requiring extra triage and diagnosis work. Instead, we define a release…