1 of 5

1

UI

E2E

Integration

Unit

E2E

Integration

UI

Unit

10K cases

5K cases

6K cases

40K+ cases

OBJECTIVE

  • Identify instances in Realize automated test suite that could be redundant
  • Optimize suite to reduce testing time while maintaining coverage

vs.

Mark Bernardo, 2019

Machine Learning for Test Optimization

2 of 5

2

Input regression test folders from Zephyr, use unsupervised machine learning in Python to cluster and categorize test cases

Use Python packages to compare similarities between test steps and results within the associated cluster

Filter the test cases so that only those with highly similar steps and results remain - these are the “potentially redundant” cases

1

2

3

4

Compare with current regression test runs to see if any pairs of redundant tests are being run in the same job

Mark Bernardo, 2019

Machine Learning for Test Optimization

3 of 5

RESULTS

  • Found 27 pairs of high-similarity cases in the first run
  • Time cost of running all high-similarity cases ~ 4 hr 28 min

3

Mark Bernardo, 2019

Machine Learning for Test Optimization

4 of 5

NEXT STEPS

SQE TEAM HANDOFF

  • Manual analysis for indicated tests
  • Goal is to optimize as many cases as possible

APPLICATIONS

  • Potential for additional savings in other test suites
  • Cross-checking between test hierarchy

4

Mark Bernardo, 2019

Machine Learning for Test Optimization

5 of 5

SPECIAL THANKS TO:

John Bunker

Jeffrey Tai

Alex Barberio

Ali Mohamad

Yves Sabato

Jeffrey Huffman

Alfonso Buono

Mahika Kudlugi

Haifeng Wang

Michael Chai

Adeleke McMillan

Randy Zhou

5

SCHOOL EMAIL: mgbernardo@wpi.edu

Jaya Padmanabhan