软件测试技术第四次实验 告
一、需求分析(描述具体需求)
1. 安装MuJava。
2. 根据给定的两个小程序使用MuJava生成对应的变异体。
3. 使用Junit给两个程序编写测试集。
4. 使用MuJava和测试集测试这些变异体。
二、概要设计(简单描述设计思路,配合UML图)
1. 设计思路
首先安装mujava.jar,openjava.jar和junit.jar等需要用到的包,在进行环境变量的配置,生成需要的变异体。接着编写对应的测试集,再对这些变异体进行测试。
三、详细设计(详细描述具体如何实现,附代码及说明)
1. 安装MuJava。
将下载好的jar包添加到环境变量中,在CLASSPATH中添加这些jar包的路径,结果如下图所示:
2. 生成变异体。
先在MujavaHome文件夹中新建四个文件夹,分别是src,classes,result,testset。
点击‘Generate’按钮,生成变异体,下图分别是BackPack和BubbleSort的变异体:
其中,只生成了method级别的变异体,没有class级别的变异体。
生成变异体后,可以在result文件夹内找到生成的变异体文件。
然后点击运行RunTest.cmd文件,打开图形界面,设定参数,分别对两个程序的变异体进行测试。
四、调试分析(在实验过程中遇到的问题以及如何解决)
在实验过程中遇到了这些问题:
首先是点击运行GenMutants.cmd文件时发生闪退,出现“找不到或无法加载主类”的错误,经查询这是环境变量没有配置正确所导致的问题,修改环境变量的配置后,能成功打开图形界面。
但是在点击‘Generate’按钮后,没有成功生成变异体,在命令台处 了如下错误:
可以看到,总共有124个变异体,有110个被kill掉的变异体。
一共有365个变异体,有321个变异体被kill掉。

六、总结
通过这次实验,我练习了环镜变量的配置方法,还学会了使用mujava来给程序进行变异测试的技术。包括怎么分类放置文件、生成变异体以及运行变异测试。在给程序编写测试用例时,用到了assertArrayEquals 这个函数,实现对数组的测试。我还学到了将命令写入cmd文件来实现运行该命令的方法。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!