Start Prioritized Testing
Leverage Predictive Test Selection Technology
Start Test Prioritization
Now that your Model is 100% mature and trained, let's have you start reaping the benefits of Predictive Test Selection 🚀
Your model will recalibrate on a rolling basis every 25 runs. As more Test Runs are pushed, your Model becomes stronger and stronger for better results!
As you update your Script, review Best Practices before Turning On.
Update CI Script to "Prioritized Tests"
--all tests
Will run all tests. Will fail on any failure. Recommended for nightly or weekly test executions.
--no tests
Will run no tests
--prioritized tests
Runs Percentage or Time-based subset of tests based on Changes. Requires the Percentage or Time-based Argument. Will fail the build on new / re-opened defects. Recommended for your most frequent run type.
--percentage
Percentage amount of tests to be selected in Smart Subset. Example "30" will run Top 30% of highest priority tests most likely to Fail.
--time
Time based parameter for Maximum time allowed for Test Execution. Example "45s" would run the Highest Priority Tests most likely to Fail within the 45 seconds timeframe. Example "10m" would run the highest priority Tests most likely to Fail within 10 minutes.
Example: Script running Prioritized 30% of Tests on each Test Run:
Example with specific Project Details:
Summary page should begin to reflect optimized test runs with prioritized testing:
Example Display of how this may look, differs from Project to Project:
Enjoy the Value of Prioritized Testing by reaping time and resource savings by only running the tests impacted by developer changes on a per change basis!
Some important considerations as you insert the AI-Model...
IMPORTANT: Where to Insert your AI Model
Appsurify is designed to bring speed and resource saving while inserting a measured amount of risk into each test run i.e., Catch 99%+ of Bugs running a Smart Subset of 10-20% of Tests.
Best Practice is to insert your AI-Model into a Pre-Merge environment where a scheduled Full-Run or Catch-All takes place before Release.
A Developer Branch or Feature branch is a great example of where value is most realized. Activity is high, CI pipelines are busy, and the need for quick feedback is important.
Best Practice Placement:
Pre-Commit Checks
Pre-Merge CI Jobs
Please consult with Appsurify Customer Success if you wish to implement in
Post-Merge CI Jobs
Pre-release / Nightly CI Jobs
Appsurify is designed to Save Time and Resources during the productivity day (or when CI pipelines are most active) and to ensure changesets are tested thoroughly before releasing.
IMPORTANT: Ensure to schedule Full Run as Catch-All
As you can see from the picture above, during the productivity day - Smart Subsets are being executed in the CI Pipeline for instant Developer Feedback, Boosted Output, and Resource Savings. Then periodically, execute a Full run as the Catch All Run to pick up any deferred regressions not caught in the Smart Subsets.
Schedule your Full Run (timing configurable to your preference, such as Twice a Day, Nightly, or over the Weekend). This is customizable depending on your Test Strategy.
Please feel free to contact Appsurify Customer Success on the Best Strategy for You.
IMPORTANT: Ensure Fail-Safe Command is in Place before Turning On
If there's any disconnection or case where Appsurify is not synced, Appsurify will always by default go back "Running All Tests." Ensure in the Command, there's a Fall-back Command enabled to default to running "All Tests" should there be any issue with Appsurify connection.
For any questions here, please contact Appsurify Customer Success.
If you have any questions about how best implement Prioritized Testing strategy that makes sense for your team, please reach out to Appsurify Customer Success.
Last updated