Analysis of VDM++ in Regression Test Suite

Author(s):  
Zahid Hussain Qaisar ◽  
Farooq Ahmad

Regression testing is important activity during the maintenance phase. An important work during maintenance of the software is to find impact of change. One of the essential attributes of Software is change i.e. quality software is more vulnerable to change and provide facilitation and ease for developer to do required changes. Modification plays vital role in the software development so it is highly important to find the impact of that modification or to identify the change in the software. In software testing that issue gets more attention because after change we have to identify impact of change and have to keenly observe what has happened or what will happen after that particular change that we have made or going to make in software. After change software testing team has to modify its testing strategy and have to come across with new test cases to efficiently perform the testing activity during the software development Regression testing is performed when the software is already tested and now some change is made to it. Important thing is to adjust those tests which were generated in the previous testing processes of the software. This study will present an approach by analyzing VDM (Vienna Development Methods) to find impact of change which will describe that how we can find the change and can analyze the change in the software i.e. impact of change that has been made in software. This approach will fulfill the purpose of classifying the test cases from original test suite into three classes obsolete, re-testable, and reusable test cases. This technique will not only classify the original test cases but will also generate new test cases required for the purpose of regression testing.

2020 ◽  
Vol 17 (11) ◽  
pp. 5198-5204
Author(s):  
Seema Rani ◽  
Amandeep Kaur

Automation in software testing is significantly growing in recent situation. Most part of the system is automated with help of the software. Today every modern software developers are trying to automate the software development process as much as possible. Therefore to develop any software more skills and expertise are needed. For the software development process, testing of software is the exceedingly significant and considerable phase. Automatic test data generation had an essential function in specific area regarding software testing. Test case creation is technique of gathering the data which completes the testing standards, all criteria’s and conditions. During testing process, the software goes through frequent modifications. As a result, due to all of these modifications and repetitive retesting the cost of testing process increases. This is called regression testing. Regression testing requires more expertise, more effort, more time and more cost. Here to reduce the time and expenditure, many type of techniques are proposed. The changes in one test case will affect all the others test cases. To triumph over this problem, when the changes occurred in the software every the test case have to be retested repeatedly. And this problem leads to make the testing process time consuming with unnecessary increased cost. Here In this research paper, the work’s focal point on automatic test cases generation and prioritization with improved evolutionary genetic algorithm.


Software testing is a major process in every software development cycle, which is a very expensive procedure. Throughout this phase software testers as well as development companies are eager to verify the software from various viewpoints for repeated testing. But detailed testing requires code execution along with all valid inputs in the form of test cases which is not possible because of resource limitations. The test cases are automatically generated in many of the software. One of the important concerns for any coder during the maintenance phase is the selection of successful test cases for code execution. This paper includes an algorithm that is designed to figure out the statement coverage of a code with proper inputs by executing the priority based approach which involves sorting the inputs in ascending order so as to have an appropriate method to test the code for maximum statement coverage.


2021 ◽  
Vol 12 (2) ◽  
pp. 1-20
Author(s):  
Nagwa R. Fisal ◽  
Abeer Hamdy ◽  
Essam A. Rashed

Regression testing is one of the essential activities during the maintenance phase of software projects. It is executed to ensure the validity of an altered software. However, as the software evolves, regression testing becomes prohibitively expensive. In order to reduce the cost of regression testing, it is mandatory to reduce the size of the test suite by selecting the most representative test cases that do not compromise the effectiveness of the regression testing in terms of fault-detection capability. This problem is known as test suite reduction (TSR) problem, and it is known to be an NP-complete. The paper proposes a multi-objective adapted binary bat algorithm (ABBA) to solve the TSR problem. The original binary bat (OBBA) algorithm was adapted to enhance its exploration capabilities during the search for a Pareto-optimal surface. The effectiveness of the ABBA was evaluated using six Java programs with different sizes. Experimental results showed that for the same fault discovery rate, the ABBA is capable of reducing the test suite size more than the OBBA and the BPSO.


2021 ◽  
Author(s):  
Kenil Manishkumar Patel ◽  
Shahid Ali

Regression testing plays a critical role to verify the functionality testing of a product. Trade Me is New Zealand based website. It is one of the major websites in New Zealand dealing in buying and selling online. The aim of this research is to find out the functionalities of Trade Me website after injecting new features. Automation regression suite is used to execute test scripts which helped the company to save time and cost compared to manual testing. Automation regression test suite also helped to prioritize test cases are designed in such a way that it can maximize the fault detection. For research analysis scrum methodology is used to meet the ultimate desires of software development companies and to increase the client satisfaction.


2014 ◽  
Vol 26 (1) ◽  
pp. 66-85
Author(s):  
Xihui Zhang ◽  
Colin G. Onita ◽  
Jasbir S. Dhaliwal

Software testing is becoming a critical component of software development, especially because of the proliferation of complex, interconnected, and real-time business applications. As a result, information technology (IT) managers are struggling with pragmatic governance mechanisms for integrating testing with development. Governance issues pertaining to how software testing is organized at strategic, tactical, and operational levels, however, have not received adequate attention in the literature. This study explores the impact of three specific governance mechanisms, including the existence of a distinct corporate testing unit, developers and testers reporting to different executives, and the existence of one-to-one matching between developers and testers, on the organizational integration of testing with development. A national survey of 196 software development and testing professionals was undertaken to investigate the impact of these governance variables on a set of dependent variables comprising organizational, group, and individual outcomes. The results indicate that these governance mechanisms have significant impacts and need to be considered for successful integration of development and testing.


2021 ◽  
Vol 50 (3) ◽  
pp. 443-457
Author(s):  
Thamer Alrawashdeh ◽  
Fuad ElQirem ◽  
Ahmad Althunibat ◽  
Roba Alsoub

The regression testing is a software-based testing approach executed to verify that changes made to the softwaredo not affect the existing functionality of the product. On account of the constraints of time and cost, it isimpractical to re-execute all the test cases for software whenever a change occurs. In order to overcome sucha problem in the selection of regression test cases, a prioritization technique should be employed. On the basisof some predefined criterion, the prioritization techniques create an execution schedule for the test cases, sothe higher priority test cases can be performed earlier than the lower priority test cases in order to improvethe efficiency of the software testing. Many prioritization criteria for regression test cases have been proposedin software testing literature; however, most of such techniques are code-based. Keeping in view this fact, thisresearch work has proposed a prioritization approach for regression test cases generated from software specificationswhich are based on the criterion of the Average Percentage Transition Coverage (APTC) by using arevised genetic algorithm. This criterion evaluates the rate of transitions coverage by incorporating knowledgeabout the significance of transitions between activates in the form of weights. APTC has been used as a fitnessevaluation function in a genetic algorithm to measure the effectiveness of a test cases sequence. Moreover, inorder to improve the coverage percentage, the proposed approach has revised the genetic algorithm by solvingthe problem of the optimal local solution. The experimental results show that the proposed approach demonstratesa good coverage performance with less execution time as compared to the standard genetic algorithmand some other prioritization techniques.


2013 ◽  
Vol 10 (1) ◽  
pp. 73-102 ◽  
Author(s):  
Lijun Mei ◽  
Yan Cai ◽  
Changjiang Jia ◽  
Bo Jiang ◽  
W.K. Chan

Many web services not only communicate through XML-based messages, but also may dynamically modify their behaviors by applying different interpretations on XML messages through updating the associated XML Schemas or XML-based interface specifications. Such artifacts are usually complex, allowing XML-based messages conforming to these specifications structurally complex. Testing should cost-effectively cover all scenarios. Test case prioritization is a dimension of regression testing that assures a program from unintended modifications by reordering the test cases within a test suite. However, many existing test case prioritization techniques for regression testing treat test cases of different complexity generically. In this paper, the authors exploit the insights on the structural similarity of XML-based artifacts between test cases in both static and dynamic dimensions, and propose a family of test case prioritization techniques that selects pairs of test case without replacement in turn. To the best of their knowledge, it is the first test case prioritization proposal that selects test case pairs for prioritization. The authors validate their techniques by a suite of benchmarks. The empirical results show that when incorporating all dimensions, some members of our technique family can be more effective than conventional coverage-based techniques.


2013 ◽  
Vol 2013 ◽  
pp. 1-10 ◽  
Author(s):  
Nicolas Frechette ◽  
Linda Badri ◽  
Mourad Badri

This paper presents a selective regression testing technique and an associated tool for object-oriented software. The technique is based on the concept of Control Call Graphs, which are a reduced form of traditional Control Flow Graphs. It uses static analysis of the source code of the program. The developed tool (1) identifies the Control Call Paths potentially impacted by changes, (2) selects, from an existing test suite, the appropriate test cases, and (3) generates new JUnit test cases for control call paths that are not covered by existing tests (new ones, or those whose structure has been modified after changes). In this way, the approach supports an incremental update of the test suite. The selected JUnit test cases, including the new ones, are automatically executed. Three concrete case studies are reported to provide evidence of the feasibility of the approach and its benefits in terms of reduction of regression testing effort.


2012 ◽  
Vol 263-266 ◽  
pp. 2168-2172
Author(s):  
Lu Lu Chen ◽  
Ling Zhang

Regression testing is an important activity to ensure the quality of software. In order to improve the efficiency of regression testing, in this paper, the author proposes to reorder test suite based on ant colony algorithm in regression testing, and compare the result with other common sort results. Through experiment, it shows that the method can get the optimal sequence of test cases under the time limit and it has been proven a superior method in both effectiveness and efficiency for test cases prioritization.


Sign in / Sign up

Export Citation Format

Share Document