Skip to content
forked from EvoSuite/evosuite

EvoSuite - automated generation of JUnit test suites for Java classes

License

Notifications You must be signed in to change notification settings

llmhyy/evosuite

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status CircleCI

Evosuite++

This project is a forked version of Evosuite. The original address of evosuite is here: https://github.com/EvoSuite/evosuite

In this project, we enhance Evosuite in terms of branch distance gradient recovering, object construction, smarter mutation, etc. Here is the relevant publication:

  • Yun Lin, Jun Sun, Gordon Fraser, Ziheng Xiu, Ting Liu, and Jin Song Dong. Recovering Fitness Gradients for Interprocedural Boolean Flags in Search-Based Testing (ISSTA 2020), to appear.

You may refer to our website for more information on this project and how to run the experiment demonstrated in our paper: https://sites.google.com/view/evoipf/home

Building EvoSuite

EvoSuite uses Maven.

First, ensure you have maven installed, to check, run

mvn -v

To build EvoSuite in Eclipse, make sure you have the M2Eclipse plugin installed, and import EvoSuite as Maven project. This will ensure that Eclipse correctly configure the Maven project.

Building EvoSuite in Eclipse

In eclipse, we need to import Evosuite projects by Import>>Maven>>Existing Maven Projects. In general, we may import the following projects for compiling Evosuite:

  • evosuite
  • evosuite-client
  • evosuite-master
  • evosuite-runtime
  • EvosuiteTest

After importing all the above projects, we need to modify pom.xml in evosuite project as follows (here is an Eclipse bug, which makes the IDE fail to recognize correct Java home path even if we set the correct JDK path in Eclipse): We find <tools-default> and replace its <exists> and <toolsjar> element with the file location inside project. For example:

<id>tools-default</id>
  <activation>
    <activeByDefault>true</activeByDefault>
    <file>
      <exists>C:\Program Files\Java\jdk1.8.0_261\libs\tools.jar</exists>
    </file>
    </activation>
    <properties>
       <toolsjar>C:\Program Files\Java\jdk1.8.0_261\libs\tools.jar</toolsjar>
    </properties>

The "evosuite-master" project may have some compilation errors. In this case, we may include the target/generated -sources/jaxb folder as build path.

FAQ

  1. If you encounter com.sun dependency issue:

    Please replace the corresponding tools.jar with the absolute path of the jdk tools.jar and the error will go away.

About

EvoSuite - automated generation of JUnit test suites for Java classes

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 98.4%
  • Shell 0.7%
  • JavaScript 0.4%
  • Python 0.2%
  • Batchfile 0.1%
  • CSS 0.1%
  • Other 0.1%