Skip to content

实验部分

对比的目标

  1. 单纯使用遗传算法和符号执行生成的测试用例覆盖率对比。
  2. 原生测试用例集

实验步骤

  1. 选取 JDart 的不同模块的两到三个类作为待测文件。
  2. 找出相关的单元测试
  3. 使用符号执行和遗传算法分别生成待测文件
  4. 使用 IDEA 测试源代码
  5. 对比并写论文

实验库

参考 Defects4j

Identifier Project name Number of bugs Active bug ids Deprecated bug ids (*)
Chart jfreechart 26 1-26 None
Cli commons-cli 39 1-5,7-40 6
Closure closure-compiler 174 1-62,64-92,94-176 63,93
Codec commons-codec 18 1-18 None
Collections commons-collections 4 25-28 1-24
Compress commons-compress 47 1-47 None
Csv commons-csv 16 1-16 None
Gson gson 18 1-18 None
JacksonCore jackson-core 26 1-26 None
JacksonDatabind jackson-databind 112 1-112 None
JacksonXml jackson-dataformat-xml 6 1-6 None
Jsoup jsoup 93 1-93 None
JxPath commons-jxpath 22 1-22 None
Lang commons-lang 64 1,3-65 2
Math commons-math 106 1-106 None
Mockito mockito 38 1-38 None
Time joda-time 26 1-20,22-27 21

实验结果

Joda-Time

image.png image.png

commons-math

image.png image.png image.png

commons-lang

image.png image.png image.png image.png