Techniques |
Applicability |
TCP
|
Industry Motivation
Industry Evaluation
Industry Author
|
Experiment subject(s) |
Industrial Partner |
Programming Language |
Automation system at Salesforce (~45000 TCs)
Industrial proprietary, very large scale |
Salesforce (USA) |
Java |
Effectiveness Metrics |
Efficiency Metrics |
Other Metrics |
Average Percentage of Faults Detected (APFD), Accuracy/precision/recall
|
|
|
Information Approach |
Algorithm Approach |
Open Challenges |
History-based, Coverage-based
|
Similarity / distance-based, Machine learning-based
|
Deepen learning, adding more features.
|
Abstract
Modern cloud-software providers, such as Salesforce.com, increasingly adopt large-scale continuous integration envi-ronments. In such environments, assuring high developer productivity is strongly dependent on conducting testing efficiently and effectively. Specifically, to shorten feedback cycles, test prioritization is popularly used as an optimiza-tion mechanism for ranking tests to run by their likelihood of revealing failures. To apply test prioritization in indus-trial environments, we present a novel approach (tailored for practical applicability) that integrates multiple existing techniques via a systematic framework of machine learning to rank. Our initial empirical evaluation on a large real-world dataset from Salesforce.com shows that our approach significantly outperforms existing individual techniques.