Prioritizing Test Cases for Regression Testing of Location-Based Services: Metrics, Techniques, and Case Study

2014 ◽  
Vol 7 (1) ◽  
pp. 54-67 ◽  
Author(s):  
Ke Zhai ◽  
Bo Jiang ◽  
W.K. Chan
Author(s):  
Jing Cheng ◽  
Tao Zhang ◽  
Jingbo Zhang ◽  
Haipeng Wang ◽  
Qin Xu

Mobile navigation service is an important and popular location-based services, which help to recommend routes for mobile users to their destinations. Modern mobile navigation service provides various navigation strategies and considers many complex situations, which make validation and verification of mobile navigation service becomes very difficult. In this paper, we present an approach to prioritize test cases for regression testing of mobile navigation Service. The approach is based on the assumption that there may be a failure if the user's actual route deviates from the navigation recommended route. In this paper, we analyze the mass mobile navigation logs, compare the recommended routes with the user travel routes, identify the deviation of the intersection point, and then priority regression test data by deviation. To evaluate our approach, we conduct a case study on a popular navigation software. By compare proposed prioritizing test approach with random test approach, the approach helps to improve test efficiency.


2014 ◽  
Vol 2014 ◽  
pp. 1-9 ◽  
Author(s):  
Ali M. Alakeel

Program assertions have been recognized as a supporting tool during software development, testing, and maintenance. Therefore, software developers place assertions within their code in positions that are considered to be error prone or that have the potential to lead to a software crash or failure. Similar to any other software, programs with assertions must be maintained. Depending on the type of modification applied to the modified program, assertions also might have to undergo some modifications. New assertions may also be introduced in the new version of the program, while some assertions can be kept the same. This paper presents a novel approach for test case prioritization during regression testing of programs that have assertions using fuzzy logic. The main objective of this approach is to prioritize the test cases according to their estimated potential in violating a given program assertion. To develop the proposed approach, we utilize fuzzy logic techniques to estimate the effectiveness of a given test case in violating an assertion based on the history of the test cases in previous testing operations. We have conducted a case study in which the proposed approach is applied to various programs, and the results are promising compared to untreated and randomly ordered test cases.


Author(s):  
Dharmveer Kumar Yadav ◽  
Sandip Dutta

egression testing is time consuming and expensive activity in software testing. In Regression testing when any changes made to already tested program it should not affect to other part of program. When some part of code is modified then it is necessary to validate the modified code. Throughout regression testing test case from test suite will be re-executed and re-execution of all the test case will be very expensive. We present fault based prioritization using fuzzy logic approach for object oriented software. We developed fuzzy expert model helps to takes better decision than other expert system for regression testing. Proposed work focus on concept of fault detection rate, execution time and coverage to select the test cases for prioritization purpose.We have taken case study and evaluated our work which shows proposed new framework gives better result than other approach. We present a novel approach for prioritization of test cases for object oriented programming using fuzzy logic technique during regression testing. We developed the proposed methodology, we apply fuzzy logic method for effective prioritization of test case. We have used case study of various programs, and the results are promising compared to other approach.


2018 ◽  
Vol 7 (2.28) ◽  
pp. 332 ◽  
Author(s):  
Lei Xiao ◽  
Huaikou Miao ◽  
Ying Zhong

Regression testing is a very important activity in continuous integration development environments. Software engineers frequently integrate new or changed code that involves in a new regression testing. Furthermore, regression testing in continuous integration development environments is together with tight time constraints. It is also impossible to re-run all the test cases in regression testing. Test case prioritization and selection technique are often used to render continuous integration processes more cost-effective. According to multi objective optimization, we present a test case prioritization and selection technique, TCPSCI, to satisfy time constraints and achieve testing goals in continuous integration development environments. Based on historical failure data, testing coverage code size and testing execution time, we order and select test cases. The test cases of the maximize code coverage, the shorter execution time and revealing the latest faults have the higher priority in the same change request. The case study results show that using TCPSCI has a higher cost-effectiveness comparing to the manually prioritization.  


Rapid evolution in software requires regression testing to be performed as an essential activity which validates the software before the next release. Where software developer may add or removes intended features to maintain the software according to the customer requirements. In that case, complete test cases execution is nearly infeasible due to limited time and resources. So, the main aim of prioritization is to test any software with minimal time and maximum efficiency in terms of fault coverage rate. This paper proposed different similarity-based prioritization techniques to provide ranking to the test cases based on their influence level which is computed as similarity degree in three levels for the software to be tested. Each level represents the integration of selected coverage criteria’s. In order to validate our proposed technique, we have conducted a case study to measure its effectiveness in prioritizing the test cases. We experimentally observed that by incorporating a similarity-based approach with more than one coverage criteria; results for similarity-based prioritization are promising than any other conventional coverage based approaches in terms of Average Percentage of Faults Detected.


Author(s):  
Varun Gupta ◽  
D. S. Chauhan ◽  
Kamlesh Dutta

Mobile software application development process must be matured enough to handle the challenges (especially market related) associated with the development of high quality mobile software development. Ever increasing number of both mobile users and mobile applications had presented software engineers with the challenge of satisfying billions of users with high quality software applications to be delivered within deadline and budgets. Always there had been a lot of pressure to develop complex software categorized by thousands of requirements, under resource constrained environment. Requirement prioritization is one of the activities undertaken by software engineer to deliver partial software product to its customers such that most important requirements are implemented in the earliest releases. During next releases some changed and pending requirements are implemented, an activity that generates ripple effects. Such ripple effects need to be tested by executing modified source code against test cases of previous releases (regression testing). Regression testing is a very effortful activity that requires a software tester to select test cases that have high fault detection capability, execute the modified code against selected test cases and performing debugging. This regression testing activity can be lowered to the maximum extend by considering dependencies between requirements during the time of requirement prioritization. Thus requirement prioritization will be carried out not only against aspects like cost, time, risks, business values etc but against dependencies also. The aim is to implement almost all dependent highest priority requirements in current release so that implementation of new requirements is unlikely to have ripple effects. Changes in requirements might not be related to variable usage and definition and might not involve a change in functionality. In such cases there is no need to select already executed test cases of previous versions. Module dependencies can lead to test case selections of previous versions if changes of requirement lead to ripple effects. This paper aims to implement highest priority requirements such that regression testing is performed to minimum thereby improving development process of mobile applications. The proposed technique had been successfully evaluated on Android based notification software application that meets the specification of Aakash tablets.


2015 ◽  
Vol 77 (13) ◽  
Author(s):  
Oluwatolani Oluwagbemi ◽  
Hishammuddin Asmuni

Activity diagrams are one of UML behavioural models suitable for system testing because it has the capacity to effectively describe the behaviours of systems under development. In this paper, a technique is proposed that generates test cases from activity diagrams by constructing an activity flow tree (AFT) which stores all the information extracted from the model file of the diagram through the help of a parser. Then, we applied an algorithm to generate test cases from the constructed tree. Test cases were generated based on the elements of activity diagrams such as activity sequences, associated descriptions and conditions. The proposed technique generated accurate test cases that completely tallied with the modeled requirements in the diagram. We utilized all-paths, basic pair paths, conditions, branches and transition criteria for generating test cases using ATM withdrawal operation software as a case study.


Sign in / Sign up

Export Citation Format

Share Document