Cluster-Based Parallel Testing Using Semantic Analysis

Finding a balance between testing goals and testing resources can be considered as a most challenging issue, therefore test optimization plays a vital role in the area of software testing. Several parameters such as the objectives of the tests, test cases similarities and dependencies between test cases need to be considered, before attempting any optimization approach. However, analyzing corresponding testing artifacts (e.g. requirement specification, test cases) for capturing the mentioned parameters is a complicated task especially in a manual testing procedure, where the test cases are documented as a natural text written by a human. Thus, utilizing artificial intelligence techniques in the process of analyzing complex and sometimes ambiguous test data, is considered to be working in different industries. Test scheduling is one of the most popular and practical ways to optimize the testing process. Having a group of test cases which are required the same system setup, installation or testing the same functionality can lead to a more efficient testing process. In this paper, we propose, apply and evaluate a natural language processing-based approach that derives test cases’ similarities directly from their test specification. The proposed approach utilizes the Levenshtein distance and converts each test case into a string. Test cases are then grouped into several clusters based on their similarities. Finally, a set of cluster-based parallel test scheduling strategies are proposed for execution. The feasibility of the proposed approach is studied by an empirical evaluation that has been performed on a Telecom use-case at Ericsson in Sweden and indicates promising results.

[1]  Jeffrey Dean,et al.  Distributed Representations of Words and Phrases and their Compositionality , 2013, NIPS.

[2]  Nan Hua,et al.  Universal Sentence Encoder , 2018, ArXiv.

[3]  Patrick F. Reidy An Introduction to Latent Semantic Analysis , 2009 .

[4]  Andreas Podelski,et al.  If A Fails, Can B Still Succeed? Inferring Dependencies between Test Results in Automotive System Testing , 2015, 2015 IEEE 8th International Conference on Software Testing, Verification and Validation (ICST).

[5]  Wasif Afzal,et al.  sOrTES: A Supportive Tool for Stochastic Scheduling of Manual Integration Test Cases , 2019, IEEE Access.

[6]  Ali Mesbah,et al.  Fine-Grained Test Minimization , 2018, 2018 IEEE/ACM 40th International Conference on Software Engineering (ICSE).

[7]  Ludger Zeevaert,et al.  Receptive multilingualism : Linguistic analyses, language policies and didactic concepts , 2007 .

[8]  Vladimir I. Levenshtein,et al.  Binary codes capable of correcting deletions, insertions, and reversals , 1965 .

[9]  Peter C. Rigby,et al.  Improving Test Effectiveness Using Test Executions History: An Industrial Experience Report , 2019, 2019 IEEE/ACM 41st International Conference on Software Engineering: Software Engineering in Practice (ICSE-SEIP).

[10]  Ben Y. Zhao,et al.  Approximate Object Location and Spam Filtering on Peer-to-Peer Systems , 2003, Middleware.

[11]  Tao Jiang,et al.  Optimal Testing Resources Allocation for Improving Reliability Assessment of Non-repairable Multi-state Systems , 2018 .

[12]  Sanja Fidler,et al.  Skip-Thought Vectors , 2015, NIPS.

[13]  S. Delgado Parallel testing techniques for optimizing test program execution and reducing test time , 2008, 2008 IEEE AUTOTESTCON.

[14]  David A. Carrington,et al.  A Framework for Specification-Based Testing , 1996, IEEE Trans. Software Eng..

[15]  Rui Abreu,et al.  Prioritizing Tests for Fault Localization , 2013, Situation Awareness with Systems of Systems.

[16]  Luis Mateus Rocha,et al.  Singular value decomposition and principal component analysis , 2003 .

[17]  Mohammad Reza Nakhai,et al.  Green Radio Communication Networks , 2012 .

[18]  Ioanna Kountouri,et al.  Latent semantic analysis of corporate social responsibility reports (with an application to Hellenic firms) , 2018, International Journal of Disclosure and Governance.

[19]  Daniel Sundmark,et al.  Cost-Benefit Analysis of Using Dependency Knowledge at Integration Testing , 2016, PROFES.

[20]  Rui Abreu,et al.  MOTSD: a multi-objective test selection tool using test suite diagnosability , 2019, ESEC/SIGSOFT FSE.

[21]  Fabrizio Lombardi,et al.  Parallel testing of multi-port static random access memories for BIST , 2001, Proceedings 2001 IEEE International Symposium on Defect and Fault Tolerance in VLSI Systems.

[22]  Sahar Tahvili Multi-Criteria Optimization of System Integration Testing , 2018 .

[23]  Guangrong Bian,et al.  Research on string similarity algorithm based on Levenshtein Distance , 2017, 2017 IEEE 2nd Advanced Information Technology, Electronic and Automation Control Conference (IAEAC).

[24]  Holger Schwenk,et al.  Supervised Learning of Universal Sentence Representations from Natural Language Inference Data , 2017, EMNLP.

[25]  Marco Laumanns,et al.  Scalable multi-objective optimization test problems , 2002, Proceedings of the 2002 Congress on Evolutionary Computation. CEC'02 (Cat. No.02TH8600).

[26]  W. Winkler Overview of Record Linkage and Current Research Directions , 2006 .

[27]  Daniel Sundmark,et al.  Dynamic Integration Test Selection Based on Test Case Dependencies , 2016, 2016 IEEE Ninth International Conference on Software Testing, Verification and Validation Workshops (ICSTW).

[28]  Susan T. Dumais,et al.  Using Linear Algebra for Intelligent Information Retrieval , 1995, SIAM Rev..

[29]  Per Runeson,et al.  Decision Support for Test Management and Scope Selection in a Software Product Line Context , 2011, 2011 IEEE Fourth International Conference on Software Testing, Verification and Validation Workshops.

[30]  Per Runeson,et al.  Guidelines for conducting and reporting case study research in software engineering , 2009, Empirical Software Engineering.

[31]  Michael Felderer,et al.  Cluster-Based Test Scheduling Strategies Using Semantic Relationships between Test Specifications , 2018, 2018 IEEE/ACM 5th International Workshop on Requirements Engineering and Testing (RET).

[32]  Wasif Afzal,et al.  ESPRET: A tool for execution time estimation of manual test cases , 2018, J. Syst. Softw..

[33]  Tom Fawcett,et al.  An introduction to ROC analysis , 2006, Pattern Recognit. Lett..

[34]  Alexey L. Lastovetsky Parallel testing of distributed software , 2005, Inf. Softw. Technol..

[35]  Sarfraz Khurshid,et al.  Parallel test generation and execution with Korat , 2007, ESEC-FSE '07.

[36]  Charles Elkan,et al.  Optimal Thresholding of Classifiers to Maximize F1 Measure , 2014, ECML/PKDD.

[37]  Quoc V. Le,et al.  Distributed Representations of Sentences and Documents , 2014, ICML.

[38]  Bill McDonald,et al.  Textual Analysis in Accounting and Finance: A Survey , 2016 .

[39]  Gonzalo Navarro,et al.  A guided tour to approximate string matching , 2001, CSUR.

[40]  Matt J. Kusner,et al.  From Word Embeddings To Document Distances , 2015, ICML.

[41]  Ming-Wei Chang,et al.  BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding , 2019, NAACL.

[42]  Colin Robson,et al.  Real world research : a resource for users of social research methods in applied settings , 2011 .

[43]  Wasif Afzal,et al.  Functional Dependency Detection for Integration Test Cases , 2018, 2018 IEEE International Conference on Software Quality, Reliability and Security Companion (QRS-C).

[44]  Michael Felderer,et al.  Automated Functional Dependency Detection Between Test Cases Using Doc2Vec and Clustering , 2019, 2019 IEEE International Conference On Artificial Intelligence Testing (AITest).

[45]  Sanjeev Arora,et al.  A Simple but Tough-to-Beat Baseline for Sentence Embeddings , 2017, ICLR.

[46]  Jeffrey Pennington,et al.  GloVe: Global Vectors for Word Representation , 2014, EMNLP.

[47]  Ellyn R. Boukus,et al.  The Information Content of FOMC Minutes , 2006 .

[48]  Thomas A. Lasko,et al.  Approximate string matching algorithms for limited-vocabulary OCR output correction , 2000, IS&T/SPIE Electronic Imaging.

[49]  Enrique Vidal,et al.  Computation of Normalized Edit Distance and Applications , 1993, IEEE Trans. Pattern Anal. Mach. Intell..