jUnit EclEmma 白盒测试
程序员文章站
2022-05-23 15:22:35
...
环境配置
1 jUnit
Junit 在eclipse中自带所以启动就可以
先add libraries
点击Junit后选择Junit4 即可
2 EclEmma
使用在线安装方式
Help install new software
将http://update.eclemma.org/地址粘贴即可
白盒测试步骤
1 被测函数
被测函数的名称 : Randomwork
功能描述 : 随机游走
进入该功能时,程序随机的从图中选择一个节点,以此为起点沿出边进行随机遍历,记录经过的所有节点和边,直到出现第一条重复的边为止,或者进入的某个节点不存在出边为止。在遍历过程中,用户也可随时停止遍历。
被测函数的代码
代码总行数 35
包含的循环数 1
包含的判定数 2
2 程序流程图
3 控制流图
4 圈复杂度计算与基本路径识别
圈复杂度为:(请给出计算过程)
3
区域数为3 或者判断有2个 2+1
基本路径1:72-82-83-103-104
基本路径2:72-82-83-85-89-103-104
基本路径3:72-82-83-85-89-83-103-104
5 jUnit测试代码
针对4.5中的每一个用例,把其测试代码粘贴如下,代码必须是完整的。
测试用例编号 jUnit测试代码
1
@Test
public void testRandomWalk0() {
main1.createDirectedGraph("C:\\Users\\lenovo\\Desktop\\图.txt");
main1.randomWalk(main1.graph);
int result=main1.flag;
if(result == 0){
System.out.println("第一分支正确");
}
}
2
@Test
public void testRandomWalk1() {
main1.createDirectedGraph("C:\\Users\\lenovo\\Desktop\\图.txt");
main1.randomWalk(main1.graph);
int result=main1.flag;
if(result == 1){
System.out.println("第二分支正确");
}
}
3
@Test
public void testRandomWalk2() {
main1.createDirectedGraph("C:\\Users\\lenovo\\Desktop\\图.txt");
main1.randomWalk(main1.graph);
int result=main1.flag;
if(result == 2){
System.out.println("第三分支正确");
}
}
6 EclEmma代码覆盖度分析
给出EclEmma的代码覆盖度分析报告的截图。
Instruction counters截图:
Branch counters截图:
Complexiy截图: