SlideShare a Scribd company logo
1 of 4
Download to read offline
Y. Laxmi Prasanna et al Int. Journal of Engineering Research and Application
ISSN : 2248-9622, Vol. 3, Issue 6, Nov-Dec 2013, pp.334-337

RESEARCH ARTICLE

www.ijera.com

OPEN ACCESS

An Approach for Usage and Dataflow Coverage in Regression
Testing
Y. Laxmi Prasanna*
*(Department of Computer Science, Anurag Engineering College, Kodad)

ABSTRACT
Regression testing is the activity of retesting a program after it has been modified to gain confidence that
existing, changed, and new parts of the program behave correctly. This activity is typically performed by
rerunning, completely or partially, a set of existing test cases (i.e., its regression test suite).In this thesis we
proposed a frame work based approach that covers the component usage and data flow variations between two
versions. The approach of proposed model is a frame work that monitors the applications activities and flow of
execution. This approach shows the statistical information of both versions such as execution flow statistics,
execution time statistics, and coverage statistics.
Keywords: Regression testing , Regression Test Selection, Software Maintenance.

I.

INTRODUCTION

Software maintenance is an activity which
includes enhancements, error corrections, optimization
and deletion of obsolete capabilities. These
modifications in the software may cause the software
to work incorrectly and may also affect the other parts
of the software, so to prevent this Regression testing is
performed. Regression testing is used to revalidate the
modifications of the software. Regression testing is an
expensive process in which test suites are executed
ensuring that no new errors have been introduced into
previously tested code. In section 2 of this paper we
have broadly shown various types of regression testing
techniques and further discussed classifications of
these types given by various authors, then moving into
the details of selective and prioritizing test cases for
regression testing, discussing search algorithms for
test case prioritization. In section 3 we have discussed
the approaches which may be used to compare various
regression testing techniques and challenges faced by
these approaches.

II.

REGRESSION TESTING

Regression testing is defined [1] as “the
process of retesting the modified parts of the software
and ensuring that no new errors have been introduced
into previously tested code”. Let P be a program [2],
let P′ be a modified version of P, and let T be a test
suite for P. Regression testing consists of reusing T on
P′, and determining where the new test cases are
needed to effectively test code or functionality added
to or changed in producing P′. There are various
regression testing techniques (1) Retest all; (2)
Regression Test Selection; (3) Test Case
Prioritization; (4) Hybrid Approach. Figure 1 shows
various regression testing techniques.

www.ijera.com

Fig1 Regression Testing Techniques
1. Retest
Retest all technique is very expensive as
compared to techniques which will be discussed
further as regression test suites are costly to execute in
full as it require more time and budget.
2. Regression Test Selection (RTS)
Due to expensive nature of “retest all”
technique, Regression Test Selection is performed. In
this technique instead of rerunning the whole test suite
we select a part of test suite to rerun if the cost of
selecting a part of test suite is less than the cost of
running the tests that RTS allows us to omit. RTS
divides the existing test suite into (1) Reusable test
cases; (2) Retestable test cases; (3) Obsolete test cases.
In addition to this classification RTS may create new
test cases that test the program for areas which are not
covered by the existing test cases. RTS techniques are
broadly classified into three categories [1].
1) Coverage techniques: they take the test coverage
criteria into account. They find coverable program
parts that have been modified and select test cases that
work on these parts.
334 | P a g e
Y. Laxmi Prasanna et al Int. Journal of Engineering Research and Application
ISSN : 2248-9622, Vol. 3, Issue 6, Nov-Dec 2013, pp.334-337
2) Minimization techniques: they are similar to
coverage techniques except that they select minimum
set of test cases.
3) Safe techniques: they do not focus on criteria of
coverage, in contrast they select all those test cases
that produce different output with a modified program
as compared to its original version.
3. Test Case Prioritization
This technique of regression testing prioritize
the test cases so as to increase a test suite‘s rate of
fault detection that is how quickly a test suite detects
faults in the modified program to increase reliability.
This is of two types:(1) General prioritization[3]
which attempts to select an order of the test case that
will be effective on average subsequent versions of
software .(2)Version Specific prioritization which is
concerned with particular version of the software.
4. Hybrid Approach
The fourth regression technique is the Hybrid
Approach of both Regression Test Selection and Test
Case Prioritization. There are number of researchers
working on this approach and they have proposed
many algorithms for it. For example,
1) Test Selection Algorithm: proposed by Aggarwal et
al. Implementation of algorithm [4]: (a) Input (b) Test
Selection algorithm: Adjust module and Reduce
module (c) output.
2) Hybrid technique proposed by Wong et al which
combines
minimization,
modification
and
prioritization based selection using test history [5].
3) Hybrid technique proposed by Yogesh Singh et al is
based on Regression Test Selection and Test Case
Prioritization. The proposed algorithm in detail can be
studied in [6].

III.

EXISTING SYSTEM

Existing approaches like "Incremental
program testing using program dependence graphs",
"Semantics guided regression test cost reduction",
"Program slicing-based regression testing techniques
and "Selecting tests and "identifying test coverage
requirements for modified software" address this
problem by defining criteria that require exercising
single control- or data-flow dependences related to
program changes.
Considering the effects of changes on single
control- and data-flow relations alone does not
adequately exercise either the effects of software
changes or the modified behavior induced by such
changes.
In the existing system, the tool called recover
takes input as source code of the application .As it
takes source code as input it does not concentrate on
behavioral differences of old and new versions of
softwares. The demerits of existing system are it does
not support polymorphic version of components and
dependency injection, and inversion of control.

www.ijera.com

www.ijera.com

Research Objective:
The results gained from empirical study
conducted and claimed in literature "Recomputing
Coverage Information to Assist Regression Testing",
thus, motivate the need for our technique that provides
usage coverage and dataflow coverage as the software
evolves without requiring rerunning of all test cases as
each software change is made. With the motivation
gained from the literature discussed I would like to
propose a frame work based approach that covers the
component usage and dataflow in new version. The
approach of the proposed model is that it is a
framework that monitors the applications activities
and flow of execution during that application’s
execution time. Where as in the case of tool called
RECOVER discussed in literature “Recomputing
Coverage Information to Assist Regression Testing”
the input will be the source code of the application.
The aim of our proposal is the version differences will
be identified during the runtime that improvises the
evaluation of the component usage coverage and
dataflow coverage.

IV.

PROPOSED SYSTEM

We need to concentrate on analyzing two
versions of the same program. The structural
difference between the two programs must be small
relative to the size of the program: only a few lines of
code or a few procedures in the program should be
different. We would like to develop techniques that
take advantage of the similarities between the two
programs, rather than use existing techniques to
analyze the programs independently and compare the
results. Because our goals include finding
unanticipated side effects of changes, we cannot
assume that an existing regression test suite is able to
find all interesting behavioral differences.
Regression testing finds differences in
behavior that were anticipated by the designers (or
testers) and specifically checked. While regression test
selection is a useful technique for reducing the cost of
testing, it cannot reveal new differences that are not
already tested by the suite. We also would like to be
able to analyze undocumented programs that may not
have test suites.
We assume we have a generator capable of
producing a differentiating test case, but that it is not
reasonable to do an exhaustive search of the input
space. It is not necessary for all generated inputs to be
valid; the search will eliminate inputs that both
programs consider to be errors. If the difference in
behavior is small relative to the input space, and we
have a generator that can produce the right inputs, the
analysis problem becomes one of performing a
directed search to find inputs which reveal behavioral
differences.
Proposed Model
Regression testing is the activity of retesting
a program after it has been modified to gain
335 | P a g e
Y. Laxmi Prasanna et al Int. Journal of Engineering Research and Application
ISSN : 2248-9622, Vol. 3, Issue 6, Nov-Dec 2013, pp.334-337
confidence that existing, changed, and new parts of
the program behave correctly. This activity is typically
performed by rerunning, completely or partially, a set
of existing test cases (i.e., its regression test suite).
Given a program P and a modified version of the
program P, the regression test suite can reveal
differences in behavior between P and Pand, thus, help
developers discover errors caused by the changes or
by unwanted side effects of the changes introduced in
P. There is much research on making regression
testing more efficient by
(1) Identifying test cases in a regression test suite that
need not be rerun on the modified version of the
software,
(2) Eliminating redundant test cases in a test suite
according to given criteria ordering test cases in a test
suite to help find defects earlier.
Little research, however, has focused on the
effectiveness of the regression test suite with respect
to the changes. To evaluate such effectiveness, it is
necessary, when performing regression testing, to
(1) Check whether existing test suites are adequate for
the changes introduced in a program and, if not,
(2) provide guidance for creating new test cases that
specifically target the (intentionally or unintentionally)
changed behavior of the program.
Existing approaches like "Incremental
program testing using program dependence graphs",
"Semantics guided regression test cost reduction",
"Program slicing-based regression testing techniques
and "Selecting tests and "identifying test coverage
requirements for modified software" address this
problem by defining criteria that require exercising
single control- or data-flow dependences related to
program changes.
Limits of the solutions exist:
Considering the effects of changes on single
control- and data-flow relations alone does not
adequately exercise either the effects of software
changes or the modified behavior induced by such
changes.
The literature “Recomputing Coverage
Information to Assist Regression Testing” that
considered as motivation proposed a tool called
recover. This tool identifies the version differences to
assist the selection of test cases that covers updates in
new version during the regression testing.
The literature "Recomputing Coverage
Information to Assist Regression Testing" presented a
technique that provides updated coverage data for a
modified program without running all test cases in the
test suite that was developed for the original program
and used for regression testing. The technique is safe
and precise in that it computes exactly the same
information as if all test cases in the test suite were
rerun.
Approach: To conduct empirical study we will
develop a tool using java aspect model that evaluates
the component usage coverage and dataflow coverage
www.ijera.com

www.ijera.com

of any java application. The resultant statistical report
would helps to identify the significant version
differences.
Block Diagram

Fig 2 Block diagram for version differentiation

V.

CONCLUSION

We conclude that novel framework helps to
identify test case feasibility based on version
differentials under regression testing. Recomputing
coverage information
assists regression testing.
Recomputing is a frame work that extracts the
component usage data flow coverage information
from two concurrent versions of the software. This
framework is accurate and scalable when compared to
the tool called recoverage.

VI.

FUTURE WORK

Further enhancement can be made by
automating without selecting the updated coverage
manually by the test engineer. By this we can still
reduce the testing budget and maintenance.
In regression testing many techniques are
proposed that provides an efficient way of selecting
regression test suite without rerunning all test cases
that was developed for old version. But still IT
companies are not utilizing these techniques, because
these techniques are not assuring completely and test
engineers are still using manual testing and
automation testing for safety.

REFERENCES
[1]

[2]

K.K.Aggarwal & Yogesh Singh, “Software
Engineering
Programs
Documentation,
Operating
Procedures,”
New
Age
International Publishers, Revised Second
Edition – 2005.
Sebastian Elbaum, Praveen Kallakuri, Alexey
G. Malishevsky, Gregg Rothermel, Satya
Kanduri, “Understanding the Effects of
Changes on the Cost-Effectiveness of
Regression Testing Techniques,” Journal of
Software
Testing,
Verification,
and
Reliability, 13(2) pages:65-83, June 2003.
336 | P a g e
Y. Laxmi Prasanna et al Int. Journal of Engineering Research and Application
ISSN : 2248-9622, Vol. 3, Issue 6, Nov-Dec 2013, pp.334-337
[3]

[4]

[5]

[6]

[7]

www.ijera.com

G. Rothermel, R.H. Untch, C. Chu, and M.J.
Harrold, “Prioritizing Test Cases for
Regression Testing,” IEEE Trans. Software
Eng., vol. 27, no. 10, pages 929-948, Oct.
2001.
K. K. Aggrawal, Yogesh Singh, A. Kaur, “
Code coverage based technique for
prioritizing test cases for regression testing,”
ACM SIGSOFT Software Engineering
Notes, vol 29 Issue 5 September 2004.
W. E.Wong, J. [21] W. E.Wong, J. R.
Horgan, S. London and H.Agrawal, “A study
of effective regression testing in practice,” In
Proceedings of the 8th IEEE International
Symposium
on
Software
Reliability
Engineering (ISSRE' 97), pages 264-274,
November 1997.
Yogesh Singh, Arvinder Kaur, Bharti Suri,
“A new technique for version-specific test
case selection and prioritization for
regression testing,” Journal of the CSI ,Vol.
36 No.4, pages 23-32, October-December
2006.
Pavan Kumar Chittimalli and Mary Jean
Harrold “Recomputing Coverage Information
toAssist Regression testing,” IEEE Trans.
Software Eng., vol. 35, no. 4, pages 452-469,
July/Aug. 2009.

www.ijera.com

337 | P a g e

More Related Content

What's hot

AN APPROACH FOR TEST CASE PRIORITIZATION BASED UPON VARYING REQUIREMENTS
AN APPROACH FOR TEST CASE PRIORITIZATION BASED UPON VARYING REQUIREMENTS AN APPROACH FOR TEST CASE PRIORITIZATION BASED UPON VARYING REQUIREMENTS
AN APPROACH FOR TEST CASE PRIORITIZATION BASED UPON VARYING REQUIREMENTS IJCSEA Journal
 
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks IJECEIAES
 
Thetheoryofsoftwaretesting
ThetheoryofsoftwaretestingThetheoryofsoftwaretesting
ThetheoryofsoftwaretestingPiyushMehta57
 
Software testing strategy
Software testing strategySoftware testing strategy
Software testing strategyijseajournal
 
Model based test case prioritization using neural network classification
Model based test case prioritization using neural network classificationModel based test case prioritization using neural network classification
Model based test case prioritization using neural network classificationcseij
 
LusRegTes: A Regression Testing Tool for Lustre Programs
LusRegTes: A Regression Testing Tool for Lustre Programs LusRegTes: A Regression Testing Tool for Lustre Programs
LusRegTes: A Regression Testing Tool for Lustre Programs IJECEIAES
 
Regression test selection model: a comparison between ReTSE and pythia
Regression test selection model: a comparison between ReTSE and pythiaRegression test selection model: a comparison between ReTSE and pythia
Regression test selection model: a comparison between ReTSE and pythiaTELKOMNIKA JOURNAL
 
Software testing
Software testingSoftware testing
Software testingBala Ganesh
 
Code coverage based test case selection and prioritization
Code coverage based test case selection and prioritizationCode coverage based test case selection and prioritization
Code coverage based test case selection and prioritizationijseajournal
 
A Review on Parameter Estimation Techniques of Software Reliability Growth Mo...
A Review on Parameter Estimation Techniques of Software Reliability Growth Mo...A Review on Parameter Estimation Techniques of Software Reliability Growth Mo...
A Review on Parameter Estimation Techniques of Software Reliability Growth Mo...Editor IJCATR
 
Testing and test case generation by using fuzzy logic and n
Testing and test case generation by using fuzzy logic and nTesting and test case generation by using fuzzy logic and n
Testing and test case generation by using fuzzy logic and nIAEME Publication
 
Ijarcet vol-2-issue-4-1291-1297
Ijarcet vol-2-issue-4-1291-1297Ijarcet vol-2-issue-4-1291-1297
Ijarcet vol-2-issue-4-1291-1297Editor IJARCET
 

What's hot (20)

AN APPROACH FOR TEST CASE PRIORITIZATION BASED UPON VARYING REQUIREMENTS
AN APPROACH FOR TEST CASE PRIORITIZATION BASED UPON VARYING REQUIREMENTS AN APPROACH FOR TEST CASE PRIORITIZATION BASED UPON VARYING REQUIREMENTS
AN APPROACH FOR TEST CASE PRIORITIZATION BASED UPON VARYING REQUIREMENTS
 
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
 
Thetheoryofsoftwaretesting
ThetheoryofsoftwaretestingThetheoryofsoftwaretesting
Thetheoryofsoftwaretesting
 
Software testing strategy
Software testing strategySoftware testing strategy
Software testing strategy
 
Model based test case prioritization using neural network classification
Model based test case prioritization using neural network classificationModel based test case prioritization using neural network classification
Model based test case prioritization using neural network classification
 
Q44098893
Q44098893Q44098893
Q44098893
 
LusRegTes: A Regression Testing Tool for Lustre Programs
LusRegTes: A Regression Testing Tool for Lustre Programs LusRegTes: A Regression Testing Tool for Lustre Programs
LusRegTes: A Regression Testing Tool for Lustre Programs
 
Dc35579583
Dc35579583Dc35579583
Dc35579583
 
Regression test selection model: a comparison between ReTSE and pythia
Regression test selection model: a comparison between ReTSE and pythiaRegression test selection model: a comparison between ReTSE and pythia
Regression test selection model: a comparison between ReTSE and pythia
 
Ijsea04031006
Ijsea04031006Ijsea04031006
Ijsea04031006
 
Sta unit 4(abimanyu)
Sta unit 4(abimanyu)Sta unit 4(abimanyu)
Sta unit 4(abimanyu)
 
Software testing
Software testingSoftware testing
Software testing
 
Code coverage based test case selection and prioritization
Code coverage based test case selection and prioritizationCode coverage based test case selection and prioritization
Code coverage based test case selection and prioritization
 
A Review on Parameter Estimation Techniques of Software Reliability Growth Mo...
A Review on Parameter Estimation Techniques of Software Reliability Growth Mo...A Review on Parameter Estimation Techniques of Software Reliability Growth Mo...
A Review on Parameter Estimation Techniques of Software Reliability Growth Mo...
 
Sta unit 3(abimanyu)
Sta unit 3(abimanyu)Sta unit 3(abimanyu)
Sta unit 3(abimanyu)
 
T0 numtq0nje=
T0 numtq0nje=T0 numtq0nje=
T0 numtq0nje=
 
Testing and test case generation by using fuzzy logic and n
Testing and test case generation by using fuzzy logic and nTesting and test case generation by using fuzzy logic and n
Testing and test case generation by using fuzzy logic and n
 
Ijcatr04051006
Ijcatr04051006Ijcatr04051006
Ijcatr04051006
 
Ijarcet vol-2-issue-4-1291-1297
Ijarcet vol-2-issue-4-1291-1297Ijarcet vol-2-issue-4-1291-1297
Ijarcet vol-2-issue-4-1291-1297
 
@#$@#$@#$"""@#$@#$"""
@#$@#$@#$"""@#$@#$"""@#$@#$@#$"""@#$@#$"""
@#$@#$@#$"""@#$@#$"""
 

Viewers also liked (20)

Bb36324329
Bb36324329Bb36324329
Bb36324329
 
Ay36304310
Ay36304310Ay36304310
Ay36304310
 
Av36287293
Av36287293Av36287293
Av36287293
 
Ar36263268
Ar36263268Ar36263268
Ar36263268
 
Aq36257262
Aq36257262Aq36257262
Aq36257262
 
Ao36247251
Ao36247251Ao36247251
Ao36247251
 
Bl36378381
Bl36378381Bl36378381
Bl36378381
 
Bp36398403
Bp36398403Bp36398403
Bp36398403
 
Cp36547553
Cp36547553Cp36547553
Cp36547553
 
Cq36554559
Cq36554559Cq36554559
Cq36554559
 
By36454458
By36454458By36454458
By36454458
 
Ck36515520
Ck36515520Ck36515520
Ck36515520
 
Ci36507510
Ci36507510Ci36507510
Ci36507510
 
Bw36444448
Bw36444448Bw36444448
Bw36444448
 
Bz36459463
Bz36459463Bz36459463
Bz36459463
 
Bn36386389
Bn36386389Bn36386389
Bn36386389
 
Bt36430432
Bt36430432Bt36430432
Bt36430432
 
Cf36490495
Cf36490495Cf36490495
Cf36490495
 
Bk36372377
Bk36372377Bk36372377
Bk36372377
 
Bu36433437
Bu36433437Bu36433437
Bu36433437
 

Similar to Bd36334337

Quality Attribute: Testability
Quality Attribute: TestabilityQuality Attribute: Testability
Quality Attribute: TestabilityPranay Singh
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)IJERD Editor
 
QUALITY METRICS OF TEST SUITES IN TESTDRIVEN DESIGNED APPLICATIONS
QUALITY METRICS OF TEST SUITES IN TESTDRIVEN DESIGNED APPLICATIONSQUALITY METRICS OF TEST SUITES IN TESTDRIVEN DESIGNED APPLICATIONS
QUALITY METRICS OF TEST SUITES IN TESTDRIVEN DESIGNED APPLICATIONSijseajournal
 
Implementation of reducing features to improve code change based bug predicti...
Implementation of reducing features to improve code change based bug predicti...Implementation of reducing features to improve code change based bug predicti...
Implementation of reducing features to improve code change based bug predicti...eSAT Journals
 
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTTEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTijfcstjournal
 
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTTEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTijfcstjournal
 
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTTEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTijfcstjournal
 
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTTEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTijfcstjournal
 
Determination of Software Release Instant of Three-Tier Client Server Softwar...
Determination of Software Release Instant of Three-Tier Client Server Softwar...Determination of Software Release Instant of Three-Tier Client Server Softwar...
Determination of Software Release Instant of Three-Tier Client Server Softwar...Waqas Tariq
 
Software testing techniques - www.testersforum.com
Software testing techniques - www.testersforum.comSoftware testing techniques - www.testersforum.com
Software testing techniques - www.testersforum.comwww.testersforum.com
 
A Complexity Based Regression Test Selection Strategy
A Complexity Based Regression Test Selection StrategyA Complexity Based Regression Test Selection Strategy
A Complexity Based Regression Test Selection StrategyCSEIJJournal
 
object oriented system analysis and design
object oriented system analysis and designobject oriented system analysis and design
object oriented system analysis and designwekineheshete
 
FROM THE ART OF SOFTWARE TESTING TO TEST-AS-A-SERVICE IN CLOUD COMPUTING
FROM THE ART OF SOFTWARE TESTING TO TEST-AS-A-SERVICE IN CLOUD COMPUTINGFROM THE ART OF SOFTWARE TESTING TO TEST-AS-A-SERVICE IN CLOUD COMPUTING
FROM THE ART OF SOFTWARE TESTING TO TEST-AS-A-SERVICE IN CLOUD COMPUTINGijseajournal
 
From the Art of Software Testing to Test-as-a-Service in Cloud Computing
From the Art of Software Testing to Test-as-a-Service in Cloud ComputingFrom the Art of Software Testing to Test-as-a-Service in Cloud Computing
From the Art of Software Testing to Test-as-a-Service in Cloud Computingijseajournal
 
Chapter 4 Software Testing_Finalised_BW.ppt
Chapter 4 Software Testing_Finalised_BW.pptChapter 4 Software Testing_Finalised_BW.ppt
Chapter 4 Software Testing_Finalised_BW.pptBule Hora University
 
Regression Optimizer
Regression OptimizerRegression Optimizer
Regression OptimizerShradha Singh
 
Characterization of Open-Source Applications and Test Suites
Characterization of Open-Source Applications and Test Suites Characterization of Open-Source Applications and Test Suites
Characterization of Open-Source Applications and Test Suites ijseajournal
 

Similar to Bd36334337 (20)

C41041120
C41041120C41041120
C41041120
 
Quality Attribute: Testability
Quality Attribute: TestabilityQuality Attribute: Testability
Quality Attribute: Testability
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)
 
QUALITY METRICS OF TEST SUITES IN TESTDRIVEN DESIGNED APPLICATIONS
QUALITY METRICS OF TEST SUITES IN TESTDRIVEN DESIGNED APPLICATIONSQUALITY METRICS OF TEST SUITES IN TESTDRIVEN DESIGNED APPLICATIONS
QUALITY METRICS OF TEST SUITES IN TESTDRIVEN DESIGNED APPLICATIONS
 
Implementation of reducing features to improve code change based bug predicti...
Implementation of reducing features to improve code change based bug predicti...Implementation of reducing features to improve code change based bug predicti...
Implementation of reducing features to improve code change based bug predicti...
 
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTTEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
 
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTTEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
 
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTTEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
 
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TESTTEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
TEST CASE PRIORITIZATION FOR OPTIMIZING A REGRESSION TEST
 
Determination of Software Release Instant of Three-Tier Client Server Softwar...
Determination of Software Release Instant of Three-Tier Client Server Softwar...Determination of Software Release Instant of Three-Tier Client Server Softwar...
Determination of Software Release Instant of Three-Tier Client Server Softwar...
 
50120140502017
5012014050201750120140502017
50120140502017
 
Too many files
Too many filesToo many files
Too many files
 
Software testing techniques - www.testersforum.com
Software testing techniques - www.testersforum.comSoftware testing techniques - www.testersforum.com
Software testing techniques - www.testersforum.com
 
A Complexity Based Regression Test Selection Strategy
A Complexity Based Regression Test Selection StrategyA Complexity Based Regression Test Selection Strategy
A Complexity Based Regression Test Selection Strategy
 
object oriented system analysis and design
object oriented system analysis and designobject oriented system analysis and design
object oriented system analysis and design
 
FROM THE ART OF SOFTWARE TESTING TO TEST-AS-A-SERVICE IN CLOUD COMPUTING
FROM THE ART OF SOFTWARE TESTING TO TEST-AS-A-SERVICE IN CLOUD COMPUTINGFROM THE ART OF SOFTWARE TESTING TO TEST-AS-A-SERVICE IN CLOUD COMPUTING
FROM THE ART OF SOFTWARE TESTING TO TEST-AS-A-SERVICE IN CLOUD COMPUTING
 
From the Art of Software Testing to Test-as-a-Service in Cloud Computing
From the Art of Software Testing to Test-as-a-Service in Cloud ComputingFrom the Art of Software Testing to Test-as-a-Service in Cloud Computing
From the Art of Software Testing to Test-as-a-Service in Cloud Computing
 
Chapter 4 Software Testing_Finalised_BW.ppt
Chapter 4 Software Testing_Finalised_BW.pptChapter 4 Software Testing_Finalised_BW.ppt
Chapter 4 Software Testing_Finalised_BW.ppt
 
Regression Optimizer
Regression OptimizerRegression Optimizer
Regression Optimizer
 
Characterization of Open-Source Applications and Test Suites
Characterization of Open-Source Applications and Test Suites Characterization of Open-Source Applications and Test Suites
Characterization of Open-Source Applications and Test Suites
 

Recently uploaded

Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1DianaGray10
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDELiveplex
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxUdaiappa Ramachandran
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostMatt Ray
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7DianaGray10
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxMatsuo Lab
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsSeth Reyes
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAshyamraj55
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.YounusS2
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Websitedgelyza
 
Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024SkyPlanner
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioChristian Posta
 
How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?IES VE
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPathCommunity
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesMd Hossain Ali
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Commit University
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfinfogdgmi
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IES VE
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URLRuncy Oommen
 

Recently uploaded (20)

Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptx
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptx
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and Hazards
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.
 
201610817 - edge part1
201610817 - edge part1201610817 - edge part1
201610817 - edge part1
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Website
 
Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
 
How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation Developers
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdf
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URL
 

Bd36334337

  • 1. Y. Laxmi Prasanna et al Int. Journal of Engineering Research and Application ISSN : 2248-9622, Vol. 3, Issue 6, Nov-Dec 2013, pp.334-337 RESEARCH ARTICLE www.ijera.com OPEN ACCESS An Approach for Usage and Dataflow Coverage in Regression Testing Y. Laxmi Prasanna* *(Department of Computer Science, Anurag Engineering College, Kodad) ABSTRACT Regression testing is the activity of retesting a program after it has been modified to gain confidence that existing, changed, and new parts of the program behave correctly. This activity is typically performed by rerunning, completely or partially, a set of existing test cases (i.e., its regression test suite).In this thesis we proposed a frame work based approach that covers the component usage and data flow variations between two versions. The approach of proposed model is a frame work that monitors the applications activities and flow of execution. This approach shows the statistical information of both versions such as execution flow statistics, execution time statistics, and coverage statistics. Keywords: Regression testing , Regression Test Selection, Software Maintenance. I. INTRODUCTION Software maintenance is an activity which includes enhancements, error corrections, optimization and deletion of obsolete capabilities. These modifications in the software may cause the software to work incorrectly and may also affect the other parts of the software, so to prevent this Regression testing is performed. Regression testing is used to revalidate the modifications of the software. Regression testing is an expensive process in which test suites are executed ensuring that no new errors have been introduced into previously tested code. In section 2 of this paper we have broadly shown various types of regression testing techniques and further discussed classifications of these types given by various authors, then moving into the details of selective and prioritizing test cases for regression testing, discussing search algorithms for test case prioritization. In section 3 we have discussed the approaches which may be used to compare various regression testing techniques and challenges faced by these approaches. II. REGRESSION TESTING Regression testing is defined [1] as “the process of retesting the modified parts of the software and ensuring that no new errors have been introduced into previously tested code”. Let P be a program [2], let P′ be a modified version of P, and let T be a test suite for P. Regression testing consists of reusing T on P′, and determining where the new test cases are needed to effectively test code or functionality added to or changed in producing P′. There are various regression testing techniques (1) Retest all; (2) Regression Test Selection; (3) Test Case Prioritization; (4) Hybrid Approach. Figure 1 shows various regression testing techniques. www.ijera.com Fig1 Regression Testing Techniques 1. Retest Retest all technique is very expensive as compared to techniques which will be discussed further as regression test suites are costly to execute in full as it require more time and budget. 2. Regression Test Selection (RTS) Due to expensive nature of “retest all” technique, Regression Test Selection is performed. In this technique instead of rerunning the whole test suite we select a part of test suite to rerun if the cost of selecting a part of test suite is less than the cost of running the tests that RTS allows us to omit. RTS divides the existing test suite into (1) Reusable test cases; (2) Retestable test cases; (3) Obsolete test cases. In addition to this classification RTS may create new test cases that test the program for areas which are not covered by the existing test cases. RTS techniques are broadly classified into three categories [1]. 1) Coverage techniques: they take the test coverage criteria into account. They find coverable program parts that have been modified and select test cases that work on these parts. 334 | P a g e
  • 2. Y. Laxmi Prasanna et al Int. Journal of Engineering Research and Application ISSN : 2248-9622, Vol. 3, Issue 6, Nov-Dec 2013, pp.334-337 2) Minimization techniques: they are similar to coverage techniques except that they select minimum set of test cases. 3) Safe techniques: they do not focus on criteria of coverage, in contrast they select all those test cases that produce different output with a modified program as compared to its original version. 3. Test Case Prioritization This technique of regression testing prioritize the test cases so as to increase a test suite‘s rate of fault detection that is how quickly a test suite detects faults in the modified program to increase reliability. This is of two types:(1) General prioritization[3] which attempts to select an order of the test case that will be effective on average subsequent versions of software .(2)Version Specific prioritization which is concerned with particular version of the software. 4. Hybrid Approach The fourth regression technique is the Hybrid Approach of both Regression Test Selection and Test Case Prioritization. There are number of researchers working on this approach and they have proposed many algorithms for it. For example, 1) Test Selection Algorithm: proposed by Aggarwal et al. Implementation of algorithm [4]: (a) Input (b) Test Selection algorithm: Adjust module and Reduce module (c) output. 2) Hybrid technique proposed by Wong et al which combines minimization, modification and prioritization based selection using test history [5]. 3) Hybrid technique proposed by Yogesh Singh et al is based on Regression Test Selection and Test Case Prioritization. The proposed algorithm in detail can be studied in [6]. III. EXISTING SYSTEM Existing approaches like "Incremental program testing using program dependence graphs", "Semantics guided regression test cost reduction", "Program slicing-based regression testing techniques and "Selecting tests and "identifying test coverage requirements for modified software" address this problem by defining criteria that require exercising single control- or data-flow dependences related to program changes. Considering the effects of changes on single control- and data-flow relations alone does not adequately exercise either the effects of software changes or the modified behavior induced by such changes. In the existing system, the tool called recover takes input as source code of the application .As it takes source code as input it does not concentrate on behavioral differences of old and new versions of softwares. The demerits of existing system are it does not support polymorphic version of components and dependency injection, and inversion of control. www.ijera.com www.ijera.com Research Objective: The results gained from empirical study conducted and claimed in literature "Recomputing Coverage Information to Assist Regression Testing", thus, motivate the need for our technique that provides usage coverage and dataflow coverage as the software evolves without requiring rerunning of all test cases as each software change is made. With the motivation gained from the literature discussed I would like to propose a frame work based approach that covers the component usage and dataflow in new version. The approach of the proposed model is that it is a framework that monitors the applications activities and flow of execution during that application’s execution time. Where as in the case of tool called RECOVER discussed in literature “Recomputing Coverage Information to Assist Regression Testing” the input will be the source code of the application. The aim of our proposal is the version differences will be identified during the runtime that improvises the evaluation of the component usage coverage and dataflow coverage. IV. PROPOSED SYSTEM We need to concentrate on analyzing two versions of the same program. The structural difference between the two programs must be small relative to the size of the program: only a few lines of code or a few procedures in the program should be different. We would like to develop techniques that take advantage of the similarities between the two programs, rather than use existing techniques to analyze the programs independently and compare the results. Because our goals include finding unanticipated side effects of changes, we cannot assume that an existing regression test suite is able to find all interesting behavioral differences. Regression testing finds differences in behavior that were anticipated by the designers (or testers) and specifically checked. While regression test selection is a useful technique for reducing the cost of testing, it cannot reveal new differences that are not already tested by the suite. We also would like to be able to analyze undocumented programs that may not have test suites. We assume we have a generator capable of producing a differentiating test case, but that it is not reasonable to do an exhaustive search of the input space. It is not necessary for all generated inputs to be valid; the search will eliminate inputs that both programs consider to be errors. If the difference in behavior is small relative to the input space, and we have a generator that can produce the right inputs, the analysis problem becomes one of performing a directed search to find inputs which reveal behavioral differences. Proposed Model Regression testing is the activity of retesting a program after it has been modified to gain 335 | P a g e
  • 3. Y. Laxmi Prasanna et al Int. Journal of Engineering Research and Application ISSN : 2248-9622, Vol. 3, Issue 6, Nov-Dec 2013, pp.334-337 confidence that existing, changed, and new parts of the program behave correctly. This activity is typically performed by rerunning, completely or partially, a set of existing test cases (i.e., its regression test suite). Given a program P and a modified version of the program P, the regression test suite can reveal differences in behavior between P and Pand, thus, help developers discover errors caused by the changes or by unwanted side effects of the changes introduced in P. There is much research on making regression testing more efficient by (1) Identifying test cases in a regression test suite that need not be rerun on the modified version of the software, (2) Eliminating redundant test cases in a test suite according to given criteria ordering test cases in a test suite to help find defects earlier. Little research, however, has focused on the effectiveness of the regression test suite with respect to the changes. To evaluate such effectiveness, it is necessary, when performing regression testing, to (1) Check whether existing test suites are adequate for the changes introduced in a program and, if not, (2) provide guidance for creating new test cases that specifically target the (intentionally or unintentionally) changed behavior of the program. Existing approaches like "Incremental program testing using program dependence graphs", "Semantics guided regression test cost reduction", "Program slicing-based regression testing techniques and "Selecting tests and "identifying test coverage requirements for modified software" address this problem by defining criteria that require exercising single control- or data-flow dependences related to program changes. Limits of the solutions exist: Considering the effects of changes on single control- and data-flow relations alone does not adequately exercise either the effects of software changes or the modified behavior induced by such changes. The literature “Recomputing Coverage Information to Assist Regression Testing” that considered as motivation proposed a tool called recover. This tool identifies the version differences to assist the selection of test cases that covers updates in new version during the regression testing. The literature "Recomputing Coverage Information to Assist Regression Testing" presented a technique that provides updated coverage data for a modified program without running all test cases in the test suite that was developed for the original program and used for regression testing. The technique is safe and precise in that it computes exactly the same information as if all test cases in the test suite were rerun. Approach: To conduct empirical study we will develop a tool using java aspect model that evaluates the component usage coverage and dataflow coverage www.ijera.com www.ijera.com of any java application. The resultant statistical report would helps to identify the significant version differences. Block Diagram Fig 2 Block diagram for version differentiation V. CONCLUSION We conclude that novel framework helps to identify test case feasibility based on version differentials under regression testing. Recomputing coverage information assists regression testing. Recomputing is a frame work that extracts the component usage data flow coverage information from two concurrent versions of the software. This framework is accurate and scalable when compared to the tool called recoverage. VI. FUTURE WORK Further enhancement can be made by automating without selecting the updated coverage manually by the test engineer. By this we can still reduce the testing budget and maintenance. In regression testing many techniques are proposed that provides an efficient way of selecting regression test suite without rerunning all test cases that was developed for old version. But still IT companies are not utilizing these techniques, because these techniques are not assuring completely and test engineers are still using manual testing and automation testing for safety. REFERENCES [1] [2] K.K.Aggarwal & Yogesh Singh, “Software Engineering Programs Documentation, Operating Procedures,” New Age International Publishers, Revised Second Edition – 2005. Sebastian Elbaum, Praveen Kallakuri, Alexey G. Malishevsky, Gregg Rothermel, Satya Kanduri, “Understanding the Effects of Changes on the Cost-Effectiveness of Regression Testing Techniques,” Journal of Software Testing, Verification, and Reliability, 13(2) pages:65-83, June 2003. 336 | P a g e
  • 4. Y. Laxmi Prasanna et al Int. Journal of Engineering Research and Application ISSN : 2248-9622, Vol. 3, Issue 6, Nov-Dec 2013, pp.334-337 [3] [4] [5] [6] [7] www.ijera.com G. Rothermel, R.H. Untch, C. Chu, and M.J. Harrold, “Prioritizing Test Cases for Regression Testing,” IEEE Trans. Software Eng., vol. 27, no. 10, pages 929-948, Oct. 2001. K. K. Aggrawal, Yogesh Singh, A. Kaur, “ Code coverage based technique for prioritizing test cases for regression testing,” ACM SIGSOFT Software Engineering Notes, vol 29 Issue 5 September 2004. W. E.Wong, J. [21] W. E.Wong, J. R. Horgan, S. London and H.Agrawal, “A study of effective regression testing in practice,” In Proceedings of the 8th IEEE International Symposium on Software Reliability Engineering (ISSRE' 97), pages 264-274, November 1997. Yogesh Singh, Arvinder Kaur, Bharti Suri, “A new technique for version-specific test case selection and prioritization for regression testing,” Journal of the CSI ,Vol. 36 No.4, pages 23-32, October-December 2006. Pavan Kumar Chittimalli and Mary Jean Harrold “Recomputing Coverage Information toAssist Regression testing,” IEEE Trans. Software Eng., vol. 35, no. 4, pages 452-469, July/Aug. 2009. www.ijera.com 337 | P a g e