<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Test Gruplama ile Zaman Tasarrufu Sa§lama ?</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Mehmet Engin Saan</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mjde Ceylan</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Aylin Ku</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Rainer Heck</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Michael Koestner</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Daniel Schertler</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>AnahtarKelimeler: Regresyon Testi</institution>
          ,
          <addr-line>Yazlm Kalitesi, Test Seim Teknikleri</addr-line>
          ,
          <country>Zaman Tasarrufu Teknikleri</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Siemens Siemensallee 75</institution>
          ,
          <addr-line>76187 Karlsruhe, Almanya</addr-line>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Siemens, AG Esentepe Mahallesi</institution>
          ,
          <addr-line>Yakack Yolu No:111, 34870 Kartal/Istanbul, Trkiye</addr-line>
        </aff>
      </contrib-group>
      <abstract>
        <p>zet Test, yazlm kalitesinin byk bir parasdr. Testin nemi gn getike artmaktadr. zellikle byk uygulamalar test etmek iin zaman gerekten nemlidir. Test mimarisinde, gml sistemleri test etmek iin takip edilecek birok teknik vardr. Regresyon testi bunlardan biridir. Regresyon testi, modiye edilmi‡ ve dzeltilmi‡ ortam yeniden test eden test tekni§i trdr. Bu teknikle, her bir yazlm versiyonuna yeni fonksiyonlar eklenir ve eklenen her fonksiyonu test etmek zaman gerektirir. Bu noktada, yeni eklenen fonksiyonlarn uygun zaman periyotlarnda mevcut fonksiyonlar bozmad§ndan emin olmak iin her versiyonda regresyon testinin uygulanmas nemlidir. Bu yazda regresyon testinin verimlili§ini artrmak iin yeni teknikler sunulmaktadr. Gml sistemlerin regresyon testi iin olan yakla‡mmz, zamandan tasarruf etmek ve daha fazla test yapmak iin hem test seim tekniklerini hem de zaman tasarrufu tekniklerini kullanmaktadr. Bu teknikler, test durumlarn benzer zelliklerine gre gruplandrmay ve test durumlarnda gerekle‡tirilen yaplandrmay geri almay ierir. Sonu olarak, nemli bir zaman tasarrufu sa§lanr. Bu sonu geli‡tirmeye ve dzeltmeye yksek fayda sa§lar.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Aects of Grouping Test Cases for Time Saving
?</p>
    </sec>
    <sec id="sec-2">
      <title>1 Siemens, AG</title>
      <p>Esentepe Mahallesi, Yakack Yolu No:111, 34870 Kartal/Istanbul, Turkey
2 Siemens
Siemensallee 75, 76187 Karlsruhe, Almanya
{engin.sacan; mujde.agra; aylin.kusku;
rainer.heck; koestner.michael; daniel.schertler}@siemens.com</p>
      <sec id="sec-2-1">
        <title>INTRODUCTION</title>
        <p>
          Software development lifecycle(SDLC) is the process which includes all phases of
software development from the beginning to end like planning, analysis, design,
production and maintenance [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ]. Dened process makes software development
more orderly and foreseeable. There are many dierent types of SDLC models
like waterfall, agile, spiral etc. All of these models should follow 6 steps to build
a good software. These steps are requirement analysis and gathering, system
analysis, system design, coding, testing and deployment.
        </p>
        <p>
          In testing step of SDLC, defects and problems are found and testers inform
developers with details of the issue. If it is a valid defect which meets a set
of conrmed defect denitions by the development team, the developer will x
defect and create a new software version for retesting. All defects are xed until
product reaches specied requirements and quality measurements [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ].
        </p>
        <p>
          Software regression testing is one of the types of testing levels. In software,
a regression testing is performed after a new feature is implemented and nds
if this new implementation causes unexpected results. It is necessary to perform
regression testing after version change is made in software, not just to nd
defects. Because these changes made in system may have distorted the structure.
Thus, it is tested whether the functions lose their functionality or are harmed by
the newly added functions.When enough time is allocated for regression testing,
project can be tracked more closely and the success of the project is ensured
[
          <xref ref-type="bibr" rid="ref3 ref4 ref5">3,4,5</xref>
          ].
        </p>
        <p>
          In today’s world, large number of embedded applications are used in
industrial communication area. Their size and sophistication are increasing as a result
of their wide usage. So that, eective regression testing of embedded applications
have great signicance[
          <xref ref-type="bibr" rid="ref6 ref7">6,7</xref>
          ].
        </p>
        <p>
          Regression testing can be used for each level of software testing. It is used
in integration part of our software development. After build is released,
automated regression testing starts and validates that unchanged parts of code are
not aected by the code changes. Plenty of time is spent setting up the test
environment, analyzing test results, adding new features to test automation
system and dealing with the environmental issues. In this approach, maintenance
eort is decreased for existing test suite and more eort can be used for new
test cases. These all test cases will be nished earlier and results will be covered
faster. This result, not only improves the suitability of the developments, but
also it can provide great contributions to software quality [
          <xref ref-type="bibr" rid="ref10 ref8 ref9">8,9,10</xref>
          ].
        </p>
      </sec>
      <sec id="sec-2-2">
        <title>TEORETICAL BACKGROUND</title>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>INTEGRATION TESTING</title>
      <p>There are three test levels as the White-box, the Black-box and the Grey-box
testings. Integration test is related with the Grey-box testing. Software mostly
consists of many modules. Integration testing shows how dierent modules of
software product work together.
2.2</p>
    </sec>
    <sec id="sec-4">
      <title>REGRESSION TESTING</title>
      <p>Regression testing is a type of testing ensures that changed or updated code has
not broken any functionality of software. Tests of existing functionalities have
been running again to be sure that they have not damaged anything.
Regression testing can be done at any type of testing (e.g., unit, integration, system,
acceptance etc.)</p>
      <p>Regression testing is crucial for software development lifecycle; at the same
time it has some major challenges. Since it involves running all old tests, it can
consume much time comparibly other type of tests while running. It can be
complicated to maintain big amount of tests. Moreover, when the number of
tests increases, designing regression test environment is a hard task to achieve.</p>
      <p>Test automation is an ecient way of running regression tests since manually
running same tests repeatedly can make testers bored and less motivated.
Moreover, updating tests regularly is a good way of running regression tests since it
can be more dicult and complex later on. Furthermore, reviewing test design
and test environment periodically to x errors and make improvements increase
eciency of testing.</p>
      <p>In our testing module, we applied regression test into integration test which
means early feedbacks are given by daily builds.
2.3</p>
    </sec>
    <sec id="sec-5">
      <title>QUALITY IN TESTING According to ISO 9126-1 [ISO/IEC, 2011], while evaluating the quality of software products, internal, external, quality in use and process attributes are measured.</title>
      <p>Internal quality of a product is measured with the internal quality
requirements. Internal quality of a product stays stable except design of product is
not changed.</p>
      <p>External quality of a product is measured with the testing of software after
it is execution. During the testing period most errors can be found and xed.</p>
      <p>
        Process quality helps improving product quality and product quality helps
improving quality in use. External and internal quality of software product can
be classied into characteristics which are functionality, reliability, usability,
efcieny, maintainability, portability[
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
      </p>
      <p>Regression testing is not only about the suitability of the developments, it can
also provide great contributions to software quality like reducing time consuming
and getting quick feedbacks.
2.4</p>
    </sec>
    <sec id="sec-6">
      <title>REGRESSION TESTING TECHNIQUES</title>
      <p>
        In the software development life cycle, maintenance is the most crucial phase
of the software delivered to the clients[
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Software maintenance results are like
error recovery, extension or deletion of capabilities, and optimization of the
system. Regression testing is dened[
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] as "the process of retesting the modied
parts of the software and ensuring that no new errors have been introduced into
previously tested code". There are several regression testing techniques exist;
      </p>
    </sec>
    <sec id="sec-7">
      <title>Retest all Regression Test Selection Test Case Prioritization Hybrid Approach</title>
    </sec>
    <sec id="sec-8">
      <title>Denitons of these techniques are given below:</title>
    </sec>
    <sec id="sec-9">
      <title>2.4.1 Retest All</title>
      <p>
        Retest all is a method for regression testing that all the tests are rerun in the
existing test suite. So the retest all method is much more expensive than other
regression testing methods which requires more time and budget[
        <xref ref-type="bibr" rid="ref13 ref14">13,14</xref>
        ] .
      </p>
    </sec>
    <sec id="sec-10">
      <title>2.4.2 Test Case Prioritization</title>
      <p>
        This technique of regression testing prioritizes 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 modied program to increase reliability.This is classied as general
prioritization and version specic prioritization. The meaning of general prioritization
is to select a sort of test cases for keeping the test coverage for every versions
of software orderly whereas the meaning of version specic prioritization does
concern a specic version of the software[
        <xref ref-type="bibr" rid="ref13 ref15 ref16">13,15,16</xref>
        ].
      </p>
    </sec>
    <sec id="sec-11">
      <title>2.4.3 Hybrid Approach</title>
      <p>
        There are many Hybrid Approaches and dierent algorithms are proposed by
researchers for both Regression Test Selection and Test Case Prioritization.
1. Leon and Podgurski proposed a new hybrid approach which is combining
coverage-based and distribution based prioritisations. It is based on
observing the eects of basic coverage maximisation and repeated coverage
maximisation. Distribution based ltering techniques are more eective methods
to reveal errors according to coverage-based ltering techniques. These two
techniques are complementary in terms of nding dierent defects [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ].
2. Wong et al developed hybrid technique which combines modication,
minimization and prioritization-based selection using software changes and
previous versions of test history [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
3. Varsha and Babita proposed [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] , a new hybrid approach for regression
test case prioritization based on source code coverage, branch coverage and
mandatory user requirement coverage.
4. Silva et al [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ], introduced a hybrid approach for the test case prioritization
and selection. Instead of running a full test, they proposed to create dierent
test suite alternatives classied as Prioritization, Selection and Minimization
techniques with existing test cases that run in a shorter time.
      </p>
    </sec>
    <sec id="sec-12">
      <title>2.4.4 Regression Test Selection</title>
      <p>
        In regression test selection technique, tests are selected that are deemed
necessary from the existing test suite to verify the validity of the modied software. To
speed up and increase eciency of regression testing there are many algorithms
[
        <xref ref-type="bibr" rid="ref20 ref21 ref22 ref23 ref24 ref25 ref26 ref27 ref28 ref29 ref30 ref8">8,20,21,22,23,24,25,26,27,28,29,30</xref>
        ] have been proposed related to regression test
selection, but it is not possible to compare and evaluate them because the goal
of each of them is dierent [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ]. Re-running of full regression test suites every
day can be extremely time consuming. This paper outlines grouping the tests
and re-running these selected test groups in existing test suite with implemented
time-saving methods. This approach not only provides time saving but also
reduces the cost of regression testing.
2.5
      </p>
      <p>REGRESSION TESTING PROCESS COST ANALYSIS
Regression testing is a repeating and growing process so that especially for large
software programs it can be complex and costly in progress of time. Testers
spend time for the following steps in a regression test process:</p>
      <p>Testers develop new test cases to test new functionalities and requirements
added to software. It sometimes takes weeks to add one test to regression
test suite.</p>
      <p>Testers spend time in the execution of test suite. While software is becoming
larger, this costs more time and eort. Test automation is a good way to
decrease eort for this step. Moreover, test automation can be executed in
not working hours.</p>
      <p>Testers investigate test results from execution. Investigating failures
manually may take much time. Failure may be related with both software
development and software testing.</p>
      <p>Testers track failures until they are xed. This step related with issues such as
the aect of failure, the experience of developer and it can be time consuming.
Testers sometimes have to execute all test suites and validate all functionality
of software. Execution and investigation of results can take long time.</p>
      <p>
        Since regression testing is a time consuming process, there are many
techniques to decrease development and maintenance part of regression testing [
        <xref ref-type="bibr" rid="ref31 ref32 ref5">5,31,32</xref>
        ].
      </p>
      <p>
        In the literture, there are many studies to increase eciency of regression
testing in terms of time, memory and cost. Data ow technique has been used
to specify tests for retesting after a change [
        <xref ref-type="bibr" rid="ref33 ref34 ref35 ref36">33,34,35,36</xref>
        ]. Data ow technique
nds relations which change aects and select all tests to cover these relations
[
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. Semantic dierencing technique uses system dependence graphs instead of
data ow graphs to determine semantic dierences between the code before and
after a change. Dependency graphs not only decrease the number of tests to
rerun and but also make code less complex by ignoring redundant relations [
        <xref ref-type="bibr" rid="ref37">37</xref>
        ].
History-based technique is based on the old test execution data. Test execution
history is analyzed to nd tests to re-run [
        <xref ref-type="bibr" rid="ref38">38</xref>
        ]. Slicing-based technique proposes
a slicing algorithm to decrease memory and time consume. This algorithm nds
all associations aected by the change or modication in a program without
using all data ow history. Partial data ow is enough for implementing algorithm
[
        <xref ref-type="bibr" rid="ref39">39</xref>
        ].
      </p>
      <p>Unlike previous studies, our approach uses both test techniques and time saving
method to enhance eciency of regression system.
3</p>
      <sec id="sec-12-1">
        <title>RESULTS AND DISCUSSIONS</title>
        <p>The testing process begins in parallel with the requirement analysis in the
Vmodel software development projects. Testing is a continuous activity throughout
the software development process. Each software process has a corresponding test
process. For this reason, the quality of test is as important as quality of software
development process.</p>
        <p>In our testing module, we applied regression test into integration test which
means early feedbacks are given by daily builds. Re-running of full regression
test suites every day can be extremely time consuming. This paper outlines
grouping the tests and re-running these selected test groups in existing test suite
with implemented time-saving methods. This approach not only provides time
saving but also reduces the cost of regression testing. Unlike previous studies, our
approach uses both test techniques and time saving method to enhance eciency
of regression system.</p>
        <p>In this study, we propose a test automation system which provides time
savings without compromising the quality of the test. In the automation system,
there are many scripts that have been automated to run every day. At the
beginning of every script, there is a factory restart, which means that the conguration
is completely erased so that the next script is not aected by the previous
conguration in anyway. On average, a factory restart time lasts about 3-4 minutes,
and it covers a considerable amount of time in many automation systems. For
a quality testing process, if we get the same quality results in a short period
of time, we will save time by removing the factory restart from the scripts. If
there is a problem to congure device in scripts, we use again factory restart to
avoid conguration failures. That is why factory restart could not be removed
in automation system.</p>
        <p>At this point, scripts which are related with the same content are combined
with an .xml le in test automation. Each feature has a "group_order" node
which is related to the "inside_group_order" node. These two nodes provide
us to list our test scripts and groups. When the id of each group changes,
automation performs factory restart to device. These steps are given below.</p>
        <p>Feedback is really important for the development perspective. Test results
should be as fast as it can be. It is hard to get test results faster because of
these problem. The solution for these problems are grouping them and remove
conguration after test script nish and do not perform restart. This grouping
gives us around 20% time reduction for running test cases more to control and
work on the test stations.(See Figure 1)</p>
        <p>Generally, features are tested with unit test after every feature test system
should reboot to clear conguration in devices. This helps clean start for device
to check this feature behaviour.</p>
        <p>Perl is one of the most powerful and practical programming language that can
be used in the case of intensive text processing. The Perl programming language
works in almost all operating systems. This specialty helps to work in
independent environment.That’s why we used Perl in test automation system. It starts
with reading a XML le and create a run list by order in "group_order" node
than check "inside_group_order" lists that XML and runs test scripts.
Automation uses Tool Command Line (TCL) to see the serial connection responses.
TCL programing language uses expect extension to get responses from a
terminal and sending commands to terminal. Generally, testing approach for test
scripts ; even test script failed or passed, test automation send device to factory
restart to eliminate conguration failure in new test script. This causes a lot of
time loss. during unit tests. Avoiding this problem, automation perform restart
with factory settings between each group. If there is a failure in the script in
same group of tests, factory restart is applied and total run would not be eected
by this failure. There could be an alternative for this approach which is:</p>
        <p>Never use factory restart and try to undo conguration even test is failed.
Continuing all test scripts with this method, could save time on factory restart.
The one big problem about this situation is undo the conguration in failed
scripts. There should be unexpected conguration change and this will eect all
other test scripts.</p>
        <p>Another benet of this method is, we can nd more related errors like even
undo conguration about one test script would be an eect on other features
and this situation decreases our vulnerability(Table 1 and Table 2 ). Device run
duration be tested also with our approach with this technique, we will observe
whether there is an error in the case of continuous operation.We also nd 10
failures in scripts which are in the same group because of undo conguration
eect in the rmware.</p>
      </sec>
      <sec id="sec-12-2">
        <title>CONCLUSION</title>
        <p>This paper describes a regression test technique that uses both test selection
method and time saving method. Our professional experience demonstrates that
this technique helps testers about giving feedback about failures on time and
also prove that related failures could be found even in integration part of the
testing. This approach signicantly outperforms that easy applied time reducing
technique with grouping related test cases. Testers could better understand and
create better reproduction steps for defects in versions. Undo the conguration
for test cases also can be a fundemental technique for our future work like
mesuring software version stability without performing the factory settings to device.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>N. B.</given-names>
            <surname>Ruparelia</surname>
          </string-name>
          ,
          <article-title>Software development lifecycle models</article-title>
          ,
          <source>ACM SIGSOFT Software Engineering Notes</source>
          , vol.
          <volume>35</volume>
          , no.
          <issue>3</issue>
          , pp.
          <fpage>813</fpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>Y.</given-names>
            <surname>Bassil</surname>
          </string-name>
          ,
          <article-title>A simulation model for the waterfall software development life cycle</article-title>
          ,
          <source>arXiv preprint arXiv:1205.6904</source>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>G.</given-names>
            <surname>Duggal</surname>
          </string-name>
          and
          <string-name>
            <given-names>B.</given-names>
            <surname>Suri</surname>
          </string-name>
          ,
          <article-title>Understanding regression testing techniques</article-title>
          ,
          <source>in Proceedings of 2nd National Conference on Challenges and Opportunities in Information Technology</source>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>W. E.</given-names>
            <surname>Wong</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. R.</given-names>
            <surname>Horgan</surname>
          </string-name>
          , S. London, and
          <string-name>
            <given-names>H.</given-names>
            <surname>Agrawal</surname>
          </string-name>
          ,
          <article-title>A study of eective regression testing in practice</article-title>
          ,
          <source>in Software Reliability Engineering</source>
          ,
          <year>1997</year>
          . Proceedings., The Eighth International Symposium on , pp.
          <fpage>264274</fpage>
          ,
          <issue>IEEE</issue>
          ,
          <year>1997</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>A. K. Onoma</surname>
            , W.-T. Tsai,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Poonawala</surname>
            , and
            <given-names>H.</given-names>
          </string-name>
          <string-name>
            <surname>Suganuma</surname>
          </string-name>
          ,
          <article-title>Regression testing in an industrial environment</article-title>
          ,
          <source>Communications of the ACM</source>
          , vol.
          <volume>41</volume>
          , no.
          <issue>5</issue>
          , pp.
          <fpage>8186</fpage>
          ,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6. W.-T. Tsai,
          <string-name>
            <given-names>L.</given-names>
            <surname>Yu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Zhu</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Paul</surname>
          </string-name>
          ,
          <article-title>Rapid embedded system testing using verication patterns, IEEE software</article-title>
          , vol.
          <volume>22</volume>
          , no.
          <issue>4</issue>
          , pp.
          <fpage>6875</fpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>P.</given-names>
            <surname>Liggesmeyer</surname>
          </string-name>
          and
          <string-name>
            <given-names>M.</given-names>
            <surname>Trapp</surname>
          </string-name>
          ,
          <article-title>Trends in embedded software engineering</article-title>
          , IEEE software, vol.
          <volume>26</volume>
          , no.
          <issue>3</issue>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>Y.</given-names>
            <surname>Chen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R. L.</given-names>
            <surname>Probert</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D. P.</given-names>
            <surname>Sims</surname>
          </string-name>
          ,
          <article-title>Specication-based regression test selection with risk analysis</article-title>
          ,
          <source>in Proceedings of the 2002 conference of the Centre for Advanced Studies on Collaborative research</source>
          , p.
          <fpage>1</fpage>
          ,
          <issue>IBM</issue>
          Press,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>H.</given-names>
            <surname>Srikanth</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Williams</surname>
          </string-name>
          ,
          <string-name>
            <given-names>and J.</given-names>
            <surname>Osborne</surname>
          </string-name>
          ,
          <article-title>System test case prioritization of new and regression test cases</article-title>
          ,
          <source>in Empirical Software Engineering</source>
          ,
          <year>2005</year>
          . 2005 International Symposium on, pp.
          <fpage>10pp</fpage>
          , IEEE,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <given-names>B.</given-names>
            <surname>Korel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. H.</given-names>
            <surname>Tahat</surname>
          </string-name>
          , and
          <string-name>
            <given-names>B.</given-names>
            <surname>Vaysburg</surname>
          </string-name>
          ,
          <article-title>Model based regression test reduction using dependence analysis</article-title>
          ,
          <source>in Software Maintenance</source>
          ,
          <year>2002</year>
          . Proceedings. International Conference on, pp.
          <fpage>214223</fpage>
          ,
          <issue>IEEE</issue>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>I. O. for Standardization and I. E.</given-names>
            <surname>Commission</surname>
          </string-name>
          , Software EngineeringProduct Quality:
          <article-title>Quality model</article-title>
          , vol.
          <volume>1</volume>
          . ISO/IEC,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <given-names>K.</given-names>
            <surname>Aggarwal</surname>
          </string-name>
          and
          <string-name>
            <given-names>Y.</given-names>
            <surname>Singh</surname>
          </string-name>
          ,
          <article-title>Software engineering programs documentation, operating procedures</article-title>
          , New Age international publishers ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <given-names>S.</given-names>
            <surname>Kadry</surname>
          </string-name>
          ,
          <article-title>A new proposed technique to improve software regression testing cost</article-title>
          ,
          <source>arXiv preprint arXiv:1111.5640</source>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>H. K. Leung</surname>
            and
            <given-names>L.</given-names>
          </string-name>
          <string-name>
            <surname>White</surname>
          </string-name>
          ,
          <article-title>Insights into regression testing (software testing)</article-title>
          ,
          <source>in Software Maintenance</source>
          ,
          <year>1989</year>
          ., Proceedings., Conference on , pp.
          <fpage>6069</fpage>
          ,
          <issue>IEEE</issue>
          ,
          <year>1989</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <given-names>N.</given-names>
            <surname>Dhamija</surname>
          </string-name>
          et al.,
          <article-title>Test cases prioritization using model based test dependencies: A survey</article-title>
          ,
          <source>International Journal of Innovation and Applied Studies</source>
          , vol.
          <volume>6</volume>
          , no.
          <issue>2</issue>
          , p.
          <fpage>144</fpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <given-names>R.</given-names>
            <surname>Pradeepa</surname>
          </string-name>
          and
          <string-name>
            <surname>K.</surname>
          </string-name>
          <article-title>VimalDevi, Eectiveness of testcase prioritization using apfd metric: Survey</article-title>
          , in
          <source>IJCA Proceedings on International Conference on Research Trends in Computer Technologies</source>
          , pp.
          <fpage>14</fpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <given-names>D.</given-names>
            <surname>Leon</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Podgurski</surname>
          </string-name>
          ,
          <article-title>A comparison of coverage-based and distributionbased techniques for ltering and prioritizing test cases</article-title>
          ,
          <source>in Software Reliability Engineering</source>
          ,
          <year>2003</year>
          .
          <source>ISSRE</source>
          <year>2003</year>
          . 14th International Symposium on , pp.
          <fpage>442453</fpage>
          ,
          <issue>IEEE</issue>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <given-names>V.</given-names>
            <surname>Kaushik</surname>
          </string-name>
          and
          <string-name>
            <given-names>B.</given-names>
            <surname>Yadav</surname>
          </string-name>
          ,
          <article-title>A new approach for regression test case prioritization using branch coverage, code coverage and mandatory requirement coverage,</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <given-names>D.</given-names>
            <surname>Silva</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Rabelo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Campanha</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. S.</given-names>
            <surname>Neto</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. A.</given-names>
            <surname>Oliveira</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Britto</surname>
          </string-name>
          ,
          <article-title>A hybrid approach for test case prioritization and selection</article-title>
          ,
          <source>in Evolutionary Computation (CEC)</source>
          ,
          <source>2016 IEEE Congress on</source>
          , pp.
          <fpage>45084515</fpage>
          ,
          <issue>IEEE</issue>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <given-names>R. A.</given-names>
            <surname>Haraty</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Mansour</surname>
          </string-name>
          , and
          <string-name>
            <given-names>B.</given-names>
            <surname>Daou</surname>
          </string-name>
          ,
          <article-title>Regression testing of database applications</article-title>
          ,
          <source>in Proceedings of the 2001 ACM symposium on Applied computing</source>
          , pp.
          <fpage>285</fpage>
          <lpage>289</lpage>
          , ACM,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <given-names>D.</given-names>
            <surname>Binkley</surname>
          </string-name>
          ,
          <article-title>Semantics guided regression test cost reduction</article-title>
          ,
          <source>IEEE Transactions on Software Engineering</source>
          , vol.
          <volume>23</volume>
          , no.
          <issue>8</issue>
          , pp.
          <fpage>498516</fpage>
          ,
          <year>1997</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <given-names>D.</given-names>
            <surname>Willmor</surname>
          </string-name>
          and
          <string-name>
            <given-names>S. M.</given-names>
            <surname>Embury</surname>
          </string-name>
          ,
          <article-title>A safe regression test selection technique for database-driven applications</article-title>
          ,
          <source>in Software Maintenance</source>
          ,
          <year>2005</year>
          .
          <source>ICSM'05. Proceedings of the 21st IEEE International Conference on</source>
          , pp.
          <fpage>421430</fpage>
          ,
          <issue>IEEE</issue>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <given-names>G.</given-names>
            <surname>Rothermel and M. J. Harrold</surname>
          </string-name>
          ,
          <article-title>A safe, ecient regression test selection technique</article-title>
          ,
          <source>ACM Transactions on Software Engineering and Methodology (TOSEM)</source>
          , vol.
          <volume>6</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>173210</fpage>
          ,
          <year>1997</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>T. L. Graves</surname>
            ,
            <given-names>M. J.</given-names>
          </string-name>
          <string-name>
            <surname>Harrold</surname>
          </string-name>
          ,
          <string-name>
            <surname>J.-M. Kim</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Porter</surname>
            , and
            <given-names>G. Rothermel,</given-names>
          </string-name>
          <article-title>An empirical study of regression test selection techniques</article-title>
          ,
          <source>ACM Transactions on Software Engineering and Methodology (TOSEM)</source>
          , vol.
          <volume>10</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>184208</fpage>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25. G. Rothermel,
          <string-name>
            <given-names>R. H.</given-names>
            <surname>Untch</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Chu</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M. J.</given-names>
            <surname>Harrold</surname>
          </string-name>
          ,
          <article-title>Prioritizing test cases for regression testing</article-title>
          ,
          <source>IEEE Transactions on software engineering</source>
          , vol.
          <volume>27</volume>
          , no.
          <issue>10</issue>
          , pp.
          <fpage>929948</fpage>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <surname>M. J. Harrold</surname>
            ,
            <given-names>J. A.</given-names>
          </string-name>
          <string-name>
            <surname>Jones</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          <string-name>
            <surname>Li</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Liang</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Orso</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Pennings</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Sinha</surname>
            ,
            <given-names>S. A.</given-names>
          </string-name>
          <string-name>
            <surname>Spoon</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Gujarathi</surname>
          </string-name>
          ,
          <article-title>Regression test selection for java software</article-title>
          ,
          <source>in ACM SIGPLAN Notices</source>
          , vol.
          <volume>36</volume>
          , pp.
          <fpage>312326</fpage>
          ,
          <issue>ACM</issue>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <given-names>A.</given-names>
            <surname>Orso</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Shi</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M. J.</given-names>
            <surname>Harrold</surname>
          </string-name>
          ,
          <article-title>Scaling regression testing to large software systems</article-title>
          ,
          <source>in ACM SIGSOFT Software Engineering Notes</source>
          , vol.
          <volume>29</volume>
          , pp.
          <fpage>241251</fpage>
          ,
          <issue>ACM</issue>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28.
          <string-name>
            <given-names>G.</given-names>
            <surname>Rothermel and M. J. Harrold</surname>
          </string-name>
          ,
          <article-title>Analyzing regression test selection techniques</article-title>
          ,
          <source>IEEE Transactions on software engineering</source>
          , vol.
          <volume>22</volume>
          , no.
          <issue>8</issue>
          , pp.
          <fpage>529551</fpage>
          ,
          <year>1996</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          29.
          <string-name>
            <given-names>S.</given-names>
            <surname>Bates</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Horwitz</surname>
          </string-name>
          ,
          <article-title>Incremental program testing using program dependence graphs</article-title>
          ,
          <source>in Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages</source>
          , pp.
          <fpage>384396</fpage>
          ,
          <issue>ACM</issue>
          ,
          <year>1993</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          30. G. Rothermel,
          <string-name>
            <given-names>M. J.</given-names>
            <surname>Harrold</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Dedhia</surname>
          </string-name>
          ,
          <article-title>Regression test selection for c++ software</article-title>
          ,
          <source>Software Testing Verication and Reliability</source>
          , vol.
          <volume>10</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>77109</fpage>
          ,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          31.
          <string-name>
            <given-names>J. A.</given-names>
            <surname>Jones</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. J.</given-names>
            <surname>Harrold</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Stasko</surname>
          </string-name>
          ,
          <article-title>Visualization of test information to assist fault localization</article-title>
          ,
          <source>in Proceedings of the 24th international conference on Software engineering</source>
          , pp.
          <fpage>467477</fpage>
          ,
          <issue>ACM</issue>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          32.
          <string-name>
            <given-names>D. S.</given-names>
            <surname>Rosenblum</surname>
          </string-name>
          and
          <string-name>
            <given-names>E. J.</given-names>
            <surname>Weyuker</surname>
          </string-name>
          ,
          <article-title>Using coverage information to predict the cost-eectiveness of regression testing strategies</article-title>
          ,
          <source>IEEE Transactions on Software Engineering</source>
          , vol.
          <volume>23</volume>
          , no.
          <issue>3</issue>
          , pp.
          <fpage>146156</fpage>
          ,
          <year>1997</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref33">
        <mixed-citation>
          33.
          <string-name>
            <surname>M. J. Harrold</surname>
            and
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Soua</surname>
          </string-name>
          ,
          <article-title>An incremental approach to unit testing during maintenance</article-title>
          ,
          <source>in Software Maintenance</source>
          ,
          <year>1988</year>
          ., Proceedings of the Conference on , pp.
          <fpage>362367</fpage>
          ,
          <issue>IEEE</issue>
          ,
          <year>1988</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref34">
        <mixed-citation>
          34.
          <string-name>
            <surname>M. J. Harrold</surname>
          </string-name>
          ,
          <article-title>An approach to incremental testing</article-title>
          ,
          <year>1988</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref35">
        <mixed-citation>
          35.
          <string-name>
            <surname>T. J. Ostrand</surname>
            and
            <given-names>E. J.</given-names>
          </string-name>
          <string-name>
            <surname>Weyuker</surname>
          </string-name>
          ,
          <article-title>Using dataow analysis for regression testing</article-title>
          ,
          <source>in Proceedings of the Sixth Annual Pacic Northwest Software Quality Conference</source>
          , pp.
          <fpage>23347</fpage>
          ,
          <year>1988</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref36">
        <mixed-citation>
          36.
          <string-name>
            <surname>A.-B. Taha</surname>
            ,
            <given-names>S. M.</given-names>
          </string-name>
          <string-name>
            <surname>Thebaut</surname>
          </string-name>
          , and S.-S. Liu,
          <article-title>An approach to software fault localization and revalidation based on incremental data ow analysis</article-title>
          ,
          <source>in Computer Software and Applications Conference</source>
          ,
          <year>1989</year>
          . COMPSAC 89.,
          <source>Proceedings of the 13th Annual International</source>
          , pp.
          <fpage>527534</fpage>
          ,
          <issue>IEEE</issue>
          ,
          <year>1989</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref37">
        <mixed-citation>
          37.
          <string-name>
            <given-names>D.</given-names>
            <surname>Binkley</surname>
          </string-name>
          ,
          <article-title>Using semantic dierencing to reduce the cost of regression testing</article-title>
          ,
          <source>in Software Maintenance</source>
          ,
          <year>1992</year>
          . Proceerdings., Conference on , pp.
          <fpage>4150</fpage>
          ,
          <issue>IEEE</issue>
          ,
          <year>1992</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref38">
        <mixed-citation>
          38.
          <string-name>
            <surname>J.-M. Kim</surname>
            and
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Porter</surname>
          </string-name>
          ,
          <article-title>A history-based test prioritization technique for regression testing in resource constrained environments</article-title>
          ,
          <source>in Proceedings of the 24th international conference on software engineering</source>
          , pp.
          <fpage>119129</fpage>
          ,
          <issue>ACM</issue>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref39">
        <mixed-citation>
          39.
          <string-name>
            <given-names>R.</given-names>
            <surname>Gupta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. J.</given-names>
            <surname>Harrold</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M. L.</given-names>
            <surname>Soa</surname>
          </string-name>
          ,
          <article-title>Program slicing-based regression testing techniques</article-title>
          ,
          <source>Journal of Software Testing Verication and Reliability</source>
          , vol.
          <volume>6</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>83111</fpage>
          ,
          <year>1996</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>