软件测试第三次作业junit和Eclemma的使用
1.
2.将第20行
for(int i = 0; i<=numPrimes-1;i++)
改为
for(int i = 0; i<numPrimes-1;i++)
3.n=2
4.节点覆盖:
[0,1,2,3,5,3,4,6,7,8,9,10,11]
边覆盖
[0,1,2,3,5,3,4,6,7,8,9,10,9,10,11]
[0,1,2,3,4,7,1,2,3,4,7,8,9,10,11]
主路径覆盖:
[0,1,2,3,5,3,5,3,4,6,7,1,2,3,4,7,1,2,3,4,6,7,1,2,3,4,6,7,8,9,10,9,10,11]
[0,1,2,3,4,6,7,8,9,10,11]
[0,1,2,3,4,7,8,9,10,11]
5.主路进测试junit和Eclemma
(一)修改部分程序,方便测试
修改前:
package hw3;
public class hw3code {
private static void printPrimes(int n){
int curPrime;
int numPrimes;
boolean isPrime;
int MAXPRIMES = 100;
int [] Primes = new int[MAXPRIMES];
Primes[0] = 2;
numPrimes = 1;
curPrime = 2;
while(numPrimes<n){
curPrime++;
isPrime = true;
for(int i = 0; i<=numPrimes-1;i++){
if(isDivisible(Primes[i],curPrime))
{
isPrime = false;
break;
}
}
if(isPrime)
{
Primes[numPrimes] = curPrime;
numPrimes++;
}
}
for(int i = 0; i<=numPrimes-1;i++)
{
System.out.println("Prime:"+Primes[i]);
}
}
static boolean isDivisible(int x, int y){
int a = y/x;
double b = (double)y/(double)x;
// System.out.println(a);
// System.out.println(b);
if(b-a == 0){
return true;
}
else{
return false;
}
}
}
修改后
package hw3;
import java.util.Arrays;
public class hw3change {
static int[] printPrimes(int n){
int curPrime;
int numPrimes;
boolean isPrime;
int [] Primes = new int[n];
Primes[0] = 2;
numPrimes = 1;
curPrime = 2;
while(numPrimes<n){
curPrime++;
isPrime = true;
for(int i = 0; i<=numPrimes-1;i++){
if(isDivisible(Primes[i],curPrime))
{
isPrime = false;
break;
}
}
if(isPrime)
{
Primes[numPrimes] = curPrime;
numPrimes++;
}
}
for(int i = 0; i<=numPrimes-1;i++)
{
System.out.println("Prime:"+Primes[i]);
}
return Primes;
}
static boolean isDivisible(int x, int y){
int a = y/x;
double b = (double)y/(double)x;
// System.out.println(a);
// System.out.println(b);
if(b-a == 0){
return true;
}
else{
return false;
}
}
}
(二)确定测试路径对应的n值
其中path1为n=5;
Path2 为 n = 2;
Path3 在实际上不可能发生;
所以测试程序为
package hw3;
import static org.junit.Assert.*;
import org.junit.Test;
public class hw3changeTest {
hw3change pri = new hw3change();
@Test
public void testprimepath2() {
int right[] = {2,3};
assertArrayEquals(right,pri.printPrimes(2));
}
@Test
public void testprimepath1() {
int right[] = {2,3,5,7,11};
assertArrayEquals(right,pri.printPrimes(5));
}
}
Junit结果:
Eclemma结果:
其中对应该程序为hw3change.java和hw3changeTest.java.
转载于:https://www.cnblogs.com/QinYongGui/p/6542157.html
软件测试第三次作业junit和Eclemma的使用相关推荐
- 软件测试 第三次作业
(a) 将就一下锻炼颈椎吧,废了半天劲也没把图片正过来 (b) 改为isDivisiable( primes[0], curPrime) (c) n = 1 (d) Node Coverage: { ...
- 软件测试实验——安装并使用junit、hamcrest和eclemma进行简单测试
一.安装junit.hamcrest和eclemma 首先,到junit官网下载junit和hamcrest. 新建java项目 完整代码已经上传至github:flyzero的coding路 实验内 ...
- JML规格编程——BUAA OO第三单元作业总结
整体概述 这个单元整体围绕Java Model Language(JML)展开,通过学习JML规格了解契约式编程的过程,课上实验中进行了JML规格的简要编写,课下实验主要通过阅读规格并按照规格的要求正 ...
- BUAA_OO第三单元作业总结——JML
BUAA_OO第三单元作业总结--JML 单元任务 本单元的主要内容是熟悉JML相关的理论知识,能够根据JML规格实现对应方法,通过一步步实现地铁系统来熟悉JML规格. 一.JML语言的理论基础.应用 ...
- Junit Hamcrest Eclemma
一.安装Junit 和 Hamcrest 选中项目->点击project->properties->Java Build path->libraries 点击右侧 Add Li ...
- BUAA-OO 第三单元作业 JML 总结与思考
一.需求分析 利用java线程的相关知识实现 1)实现两个容器类 Path 和 PathContainer JML规格⼊⻔级的理解和代码实现 2)实现容器类 Path 和数据结构类 Graph JML ...
- OO第三单元作业总结
OO第三次作业总结 一.JML (一)JML语言理论基础 (1)JML表达式: JML表达式包括以下几种: 原子表达式如\result(方法执行后的返回值).\old(表达式在相应方法执行前的取值): ...
- 程序设计第三次作业附加 代码规范
题目:第三次作业附加 myGithub 我的程序设计第三次作业 Calculator.h //==============================// //文件名称:calculator.h ...
- 2021年人工神经网络第三次作业-第二题:遗传算法与人工神经网络-参考答案
简 介: 给出了对于BP网络求解异或问题过程中,利用遗传算法完成网络演变的过程.所使用的遗传算法是最基本的遗传算法.利用遗传算法对于网络的系数进行演变,可以对网络系数初始化过程进行优化.对于不同的遗传 ...
最新文章
- Linux用户配置密码,linux用户配置文件passwd和密码配置文件shadow,用户管理,组管理...
- ibm服务器和微软,微软与IBM不得不说的事情
- java打印设备集中管理_Kafka+Log4j实现日志集中管理
- 数据结构树的基本操作_树的各类基本操作(数据结构)
- 进制转换c语言代码_奇怪的C语言代码,有些函数在变量前加上(void)是什么类型转换?...
- linux设备模型(8)_platform设备,Linux设备模型之platform总线
- 国际顶级学界和工业界大咖云集、AIoT 实训营,你不可错过的嵌入式 AI 盛会!...
- 软件工程 CI持续集成实例 Zanata+github+Jenkins
- 得力D991CN Plus计算器评测(全程对比卡西欧fx-991CN X)
- 人工智能深度学习Caffe框架介绍,优秀的深度学习架构 1
- 2012-2013考研英语词汇
- Qt5使用Poppler实现PDF阅读器
- Windows 7 IE主页被篡改,如何修复?
- listing directory /
- ios 高德获取定位_单次定位-获取位置-开发指南-iOS 定位SDK | 高德地图API
- Layui官网地址官网仓库
- javastudy - 52:素数回文数的个数
- 三年级计算机画图工具教案,小学三年级信息技术教学设计《画图》
- 【阿里2013实习笔试】找明星
- Chrome 开发者工具 —— Performance 快速入门
热门文章
- DenseNet细节
- 自定义---单批次训练函数
- softmax回归的从零开始实现
- matlab cy11,matlab解线性回归方程,y=a0+a1*A+a2*B+a3*C+a4*D+a5*E+a6*F; 数据足够,求a0,a
- java实现ip能访问_Java过滤ip,只允许配置的ip能够被访问
- loss函数之MultiLabelSoftMarginLoss
- vscode php 不进断点,php – Docker和XDebug没有读取断点VSCode
- 各类学术评价对象的发展脉络、测度指标与方法
- 一道Struts面试题
- 微信小程序 --- 动态获取input的value