Test Case Prioritization Using UML State Chart Diagram and End-User Priority
The intangible behaviour of software has given rise to various challenges in the field of testing software. One of the major challenges is to efficiently carry out regression testing. Regression testing is performed to ensure that any modifications in one
- PDF / 189,105 Bytes
- 8 Pages / 439.37 x 666.142 pts Page_size
- 5 Downloads / 235 Views
Abstract The intangible behaviour of software has given rise to various challenges in the field of testing software. One of the major challenges is to efficiently carry out regression testing. Regression testing is performed to ensure that any modifications in one component of the software do not adversely affect the other components. But, the retesting of test cases during regression testing increases the testing time and leads to delayed delivery of the software product. In this paper, a dynamic model, i.e. UML state chart diagram, is used for system modelling. Further, the UML state chart diagram is converted into an intermediate representation, i.e. State Chart Graph (SCG). The SCG is traversed to identify the affected nodes due to certain modification in the software. This information, about the affected nodes, is periodically stored in a historical data store across different versions of the software. Next time, when regression testing is carried out for any change, the stored data decides the pattern of frequently affected nodes for prioritizing the test cases and further it decides the criticality value (CV) of a test case. Along with this, to strengthen the prioritization the test sequence, two more criteria, i.e. priority set by the end-user for different functions and browsing history of the end-user, are also added up. This approach is found to be very efficient as we are able to model dynamic nature of applications, maintain a historical data store of the test cases and track the complete life of an object. N. Panda (✉) ⋅ A.A. Acharya ⋅ P. Bhuyan School of Computer Engineering, KIIT University, Bhubaneswar 751024, India e-mail: [email protected] A.A. Acharya e-mail: [email protected] P. Bhuyan e-mail: [email protected] D.P. Mohapatra Department of Computer Science & Engineering, National Institute of Technology, Rourkela 769008, India e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2017 H.S. Behera and D.P. Mohapatra (eds.), Computational Intelligence in Data Mining, Advances in Intelligent Systems and Computing 556, DOI 10.1007/978-981-10-3874-7_54
573
574
N. Panda et al.
Keywords State chart diagram model Prioritization
⋅
⋅
State chart graph
⋅
Regression testing
⋅
UML
1 Introduction Software testing plays a vital role in measuring the functional and non-functional quality attributes, which shows the path to improve upon the quality of the software. Maintaining quality is a tedious task due to exponential growth in complexity of the software. Quality can be ensured by adopting a good testing methodology. Therefore, more than half of the development effort and time are spent on testing [1, 2]. According to IEEE [3, 4], the quality can be ensured over the lifespan of the software, if different defects present in the modified product can be identified and the software testers are able to define necessary steps to fix all the defects in due time. The act of testing performed to ensure that the modified components of the software are not going to adversely affect the existing
Data Loading...