//本次的作业为
/*******************************************************
* Finds and prints n prime integers
* Jeff Offutt, Spring 2003
******************************************************/
public static void printPrimes (int n)
{
int curPrime; // Value currently considered for primeness
int numPrimes; // Number of primes found so far.
boolean isPrime; // Is curPrime prime?
int [] primes = new int [MAXPRIMES]; // The list of prime numbers. // Initialize 2 into the list of primes.
primes [0] = 2;
numPrimes = 1;
curPrime = 2;
while (numPrimes < n)
{
curPrime++; // next number to consider ...
isPrime = true;
for (int i = 0; i <= numPrimes-1; i++)
{ // for each previous prime.
if (curPrime%primes[i]==0)
{ // Found a divisor, curPrime is not prime.
isPrime = false;
break; // out of loop through primes.
}
}
if (isPrime)
{ // save it!
primes[numPrimes] = curPrime;
numPrimes++;
}
} // End while // Print all the primes out.
for (int i = 0; i <= numPrimes-1; i++)
{
System.out.println ("Prime: " + primes[i]);
}
} // end printPrimes

一、画出控制流图

二、设计一个t2=(n=5)比t1=(n=3)容易发现发现的错误

数组越界的错误。

三、写一个测试用例,使相应的测试路径访问连接while语句开始到fot语句得边,而不用通过while的循环体

t:n=1

四、例举每个节点覆盖,边覆盖和主路径覆盖的TR

节点覆盖需求:{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16}

边覆盖需求:{(1,2),(2,3),(3,5),(5,6),(6,7),(7,8),(7,9),(9,6),(8,10),(6,10),(10,11),(10,12),(11,2),(12,2),(2,4),(4,13),(13,14),(14,15),(14,16)}

主路径覆盖需求:

{(1,2,3,4,5,6,7),

(1,2,3,4,5,6,8,9,10,11),

(1,2,3,4,5,6,8,9,11),

(1,2,3,4,5,9,10,11),

(1,2,3,4,5,9,11),

(1,2,12,13,14,15),

(1,2,12,16),

(3,4,5,6,8,9,10,11,2,12,13,14,15),

(3,4,5,6,8,9,11,2,12,13,14,15),

(3,4,5,6,8,9,10,11,2,12,13,16),

(3,4,5,6,8,9,11,2,12,13,16),

(3,4,5,9,10,11,2,12,13,14,15),

(3,4,5,9,11,2,12,13,14,15),

(3,4,5,9,10,11,2,12,13,16),

(3,4,5,9,11,2,12,13,16),

(6,7,5,9,10,11,2,12,13,14,15),

(6,7,5,9,11,2,12,13,14,15),

(6,7,5,9,10,11,2,12,13,16),

(6,7,5,9,11,2,12,13,16),

(14,15,13,16),

(13,14,15,13),

(5,6,7,5),

(2,3,4,5,6,8,9,10,11,2),

(2,3,4,5,6,8,9,11,2),

(2,3,4,5,9,10,11,2),

(2,3,4,5,9,11,2),

}

五、实现一个主路径覆盖的测试

package example;

/**
* Created by Ev_Eraser on 2016/3/18.
*/
public class Myclass {
public String triangle(int a,int b,int c) {
if(a + b < c || a + c < b || b+ c < a)
return "notTriangle";
if(a == b && b == c)
return "isosceles";
if(a == b || b == c || a == c)
return "equilateral";
else
return "scalene";
}
}

测试类用例:

package example;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized; import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection; import static org.junit.Assert.*;
@RunWith(Parameterized.class)
public class MyclassTest {
private Myclass myClass;
private int input1;
private int input2;
private int input3;
private String expected; public MyclassTest(int input1, int input2,int input3,String expected){
this.input1 = input1;
this.input2 = input2;
this.input3 = input3;
this.expected = expected; }
@Before
public void setUp() throws Exception {
myClass = new Myclass();
} @Parameterized.Parameters
public static Collection<Object[]> getData(){
return Arrays.asList(new Object[][]{
{2,2,2,"isosceles"},
{2,2,3,"equilateral"},
{2,4,3,"scalene"},
{2,9,2,"notTriangle"}
});
} // @After
// public void tearDown() throws Exception {
//
// } @Test
public void testTriangle() throws Exception {
assertEquals(this.expected, myClass.triangle(input1,input2,input3));
}
}

软件测试基础homework3的更多相关文章

  1. web软件测试基础系统测试简化理论

    系统测试点主要如下 1.系统测试基础-2.测试对象与测试级别-3.系统测试类型-4.系统测试方法-5.系统测试之软件测试质量. 1.系统测试:是尽可能彻底地检查出程序中的错误,提高软件系统的可靠性. ...

  2. 软件测试基础Ⅲ(osi7层协议,测试模型,LoadRunner组件,软件质量模型)

    osi7层开放式系统互连网络模型 1.物理层:主要定义物理设备标准,如网线的接口类型.光纤的接口类型.各种传输介质的传输速率等.它的主要作用是传输比特流(就是由1.0转化为电流强弱来进行传输,到达目的 ...

  3. part1 软件测试基础知识面试题(含答案)

    1.你的测试职业发展是什么? 测试经验越多,测试能力越高.所以我的职业发展是需要时间积累的,一步步向着高级测试工程师奔去.而且我也有初步的职业规划,前3年积累测试经验,按如何做好测试工程师的要点去要求 ...

  4. [软件测试基础2]基于selenium的自动化测试

    这次上机我们主要使用Selenium进行自动化测试,首先我们需要下载selenium-java的依赖项. 若使用maven管理项目,则在.pom文件中加入如下依赖项: <dependency&g ...

  5. [软件测试基础3]基于Jemter的压力测试

    一.整体目标 安装LAMP待测系统,推荐ECShop,基于此进行Jmeter压力测试,并在测试后得出Jmeter测试报告,并根据sysstat得出Linux服务器的CIMN(CPU,IO,Memory ...

  6. 软件测试基础homework2

    1.for循环里的i>0应该改为i>=0 test1:x=[3,2,5];y=2 test2:x=[3];y=2 test3:x=[2,3,5];y=4 2.for循环里的i应该倒序 te ...

  7. 软件测试基础(软件测试分类和工具组)firebug、firepath的安装

    白盒测试:需要了解内部结构和代码 黑盒测试:不关心内部结构和代码 灰盒测试:介于白盒黑盒之间 静态测试:测试时不执行被测试软件 动态测试:测试时执行被测试软件 单元测试:测试软件的单元模块 集成测试: ...

  8. 软件测试基础-Homework1

    The error was in my graduate work which was about game development.I broadcast some messages to the ...

  9. 【Selenium】软件测试基础(软件测试分类和工具组)firebug、firepath的安装

    白盒测试:需要了解内部结构和代码 黑盒测试:不关心内部结构和代码 灰盒测试:介于白盒黑盒之间 静态测试:测试时不执行被测试软件 动态测试:测试时执行被测试软件 单元测试:测试软件的单元模块 集成测试: ...

随机推荐

  1. iOS 8.0后使用UIAlertController

    iOS 8的新特性之一就是让接口更有适应性.更灵活,因此许多视图控制器的实现方式发生了巨大的变化.全新的UIPresentationController在实现视图控制器间的过渡动画效果和自适应设备尺寸 ...

  2. 实现tableview的下拉刷新

    实现tableview的下拉刷新 推荐第三方下拉刷新代码http://code4app.com/ios/%E5%BF%AB%E9%80%9F%E9%9B%86%E6%88%90%E4%B8%8B%E6 ...

  3. Emmet,让你爱上敲代码

    原文链接:http://m.blog.csdn.net/article/details?id=53484535 不错 —— 由 都不要欺负我 分享 Emmet 是一个可用在许多流行文本编辑器上的极大简 ...

  4. 自定义RatingBar,不同分辨率屏幕下图片拉伸或者显示不完整问题解决

    1.需要两张评分图片ic_rating_highlight.png ic_rating_normal_white.png(宽高都是52px,且有内边距)  将这两张图片添加到各分辨率文件夹下  开发过 ...

  5. Asp.net+JS 分页

    function pagestart() {//初始化页面,获取公司新闻 $("#pagediv").hide(); $("); var pagesize = $(&qu ...

  6. 搭建高可用MongoDB集群(一):配置MongoDB

    在大数据的时代,传统的关系型数据库要能更高的服务必须要解决高并发读写.海量数据高效存储.高可扩展性和高可用性这些难题.不过就是因为这些问题Nosql诞生了. NOSQL有这些优势: 大数据量,可以通过 ...

  7. Hadoop 大数据第一天

    大数据第一天 1.Hadoop生态系统 1.1 Hadoop v1.0 架构 MapReduce(用于数据计算) HDFS(用于存储数据) 1.2 Hadoop v2.0 架构 MapReduce(用 ...

  8. 关于DOM的一些操作 整理 积累

    var chils= s.childNodes;  //得到s的全部子节点 var par=s.parentNode;   //得到s的父节点 var ns=s.nextSbiling;   //获得 ...

  9. C#基础:值类型、引用类型与ref关键字

    在C#中,ref的意思是按引用传递.可以参考C++: int a = 10, b = 20; void swap(int x, int y) { int temp = x; x = y; y = te ...

  10. 如何设置游戏分辨率(C++)