Skip to topic | Skip to bottom


Home

Main
Main.TestHistoryr1.8 - 13 Aug 2009 - 13:13 - AndyZaidman

Start of topic | Skip to actions

Test and production code co-evolution

In this research we investigate whether production and test code co-evolve together. The main investigators for this line of research are: Andy Zaidman, Bart Van Rompaey, Serge Demeyer, and Arie van Deursen.

Initial results technical report

In this paper we describe our ideas on a running example (JPacman) and three open source cases, namely ArgoUML, Checkstyle and PMD. You can find the technical report here. High-resolution images used in this paper can be found here.

ICST paper

In this paper we go deeper into two open source projects, namely ArgoUML and Checkstyle. You can find the paper here.

Andy Zaidman, Bart Van Rompaey, Serge Demeyer, Arie van Deursen. Mining Software Repositories to Study Co-Evolution of Production & Test Code. Proceedings of the 1st International Conference on Software Testing, Verification, and Validation (ICST2008), pages 220-229, IEEE Computer Society, 2008.

ICST follow-up paper

We've submitted a follow-up paper to our ICST 2008 paper to the Software Testing, Verification and Reliability journal (STVR). High-res images of our visualizations for this paper are listed below.

  • Figure 4. (pdf) Checkstyle Change History View.
  • Figure 5. (pdf) Checkstyle Growth History View.
  • Figure 6. (pdf) Checkstyle Test Coverage Evolution View.
  • Figure 7. (pdf) ArgoUML Change History View.
  • Figure 8. (pdf) ArgoUML Growth History View.
  • Figure 9. (pdf) ArgoUML Test Coverage Evolution View.
  • Figure 10. (pdf) SIG Change History View.
  • Figure 11. (pdf) SIG Growth History View.
  • Figure 12. (pdf) SIG Test Coverage Evolution View.

In this paper we add an industrial case study and refine our views. You can find a draft version of the paper -- including high-res color images -- here.

TeMo toolchain

As a first step, we are making available binaries for our toolchain TeMo, which stands for Test Monitor. Using the steps below, you are able to generate the Change History View and Growth History View.

  • Download the standard config.txt configuration file. Adapt all settings, more specifically:
    • svnPath=https://yourserver.com/svn/yourproject
    • user=yourusername
    • password=yourpassword
    • workingPath=./workingDir (a directory that will be deleted)
    • startRev=0
    • endRev=2
    • xmlfile=myproject.xml
  • Download temo_generatexml.jar. This java program connects to your subversion repository and will download the entire log file of changes and store it in XML.
  • Download temo_changehistory.jar. Using the previously generated xml file, the Change History View will be generated.
  • Download temo_growthhistory.jar. This java program connects to your subversion repository and will analyze each revision between startRev and endRev. For each of these revisions, metric data is collected.
  • The previous step generates a text file with the name results_startRev_endRev.txt. Load this file into Excel (or something similar) to generate a graph that is the Growth History View.
  • Make sure that you download all files into the same directory!

Executing a jar file goes as: java -jar jarfile.jar.

TeMo is currently at version 0.2 and is provided as is. We developed and used TeMo using Sun's JDK 1.5.x.

If you want more information on this toolchain, please contact one of the authors (see at the top).

-- AndyZaidman - 13 Aug 2009




Edit | Attach | Printable | Raw | More topic actions
Revisions: | r1.8 | > | r1.7 | > | r1.6 | Page history | Backlinks
You are here: Main > TestHistory

to top

Copyright © 2003-2017, Software Engineering Research Group, Delft University of Technology, The Netherlands