Launchable’s core technology is a machine learning engine that predicts the likelihood of failure for each test case based on the source code changes being tested. This lets you run only the meaningful subset of tests in the order that minimizes feedback delay.
Today, most software projects run all the tests all the time, in no particular order. When you are working on a small change in a large project, this is wasteful. You know that only a few tests are relevant, yet there’s no easy way to know exactly which ones they are.
Launchable’s machine learning engine studies past changes and their associated test results. Changes from Git repositories and test results from CI systems are refined and then used to train the engine. The refinement process also removes sensitive information, keeping your security people happy.
You can then use Launchable’s prediction to reduce feedback delays in your development cycle:
Intelligent Integration Tests: Your integration tests take 4 hours to run, so you only run them nightly. Developers have to wait a whole day to get feedback. With Launchable, you can create a 10% adaptive subset of this suite that runs every 30 minutes. Now, 50% of the regressions get caught right away, while the context is fresh in your mind, instead of a day later.
Pull Request Validation: Every pull request you create has to first go through a 60 minute validation test suite. Then your teammate reviews your code, resulting in an incremental change. Now you have to wait another hour for tests before you can merge your pull request and move on. With Launchable, you can get notified as soon as you reach a 50% confidence level, letting you start code review earlier.
Local Development Loop: You just finished working on a feature on your local branch, and now you need to run the tests. They take an hour to run, so you kick off the test suite and go to lunch. With Launchable, you can run an adaptive subset of the full test suite to see test failures right away. You can keep running this adaptive suite in the background to get real-time feedback as you make changes.