//本次的作业为
/*******************************************************
* 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. jQuery treetable【表格多重折叠树功能及拖放表格子元素重新排列】

    今天有个表格需求做到多重折叠子元素功能,仔细想了下实现原理, 1.在html中,把父子节点的关系写在自定义属性,但对于节点是否有孩子(hasChild),是否是最后一个节点(isLastOne),是否 ...

  2. MySQL 5.5安装记录

    安装gnake ./configure && gmake && gmake install 安装ncurses-devel yum install -y ncurses ...

  3. Jquery 实现点击tab切换页签

    1.我将这个封装城了插件代码如下,你可以独立到一个js文件,然后页面引用下这个js文件: (function ($) { $.fn.extend({ qmTabs: function () { var ...

  4. 浅析session&cookie

    session&cookie没有出现的黑暗时代 大家都知道,HTTP协议是一种无状态的协议,本次请求下一次请求没有任何的关联,所有没有办法直接用http协议来记住用户的信息,试想一向,每一次点 ...

  5. 监测程序运行的时间,stopWatch

    ArrayList arrInt = new ArrayList(); //用stopwatch来计时 运行的时间 Stopwatch watch = new Stopwatch(); watch.S ...

  6. Windows 10 使用C#如何将IE设置为默认浏览器

    在WPF XBAP项目中遇到这样一个问题,程序在Windows 10上面无法运行.原因是因为Windows 10默认浏览器是Edge,而XBAP程序是需要在IE上面运行的.于是开始想办法修改Windo ...

  7. C语言中的强符号与弱符号

    转自:http://blog.csdn.net/astrotycoon/article/details/8008629 一.概述 在C语言中,函数和初始化的全局变量(包括显示初始化为0)是强符号,未初 ...

  8. T-SQL 基础学习 02

    数据库设计 定义 数据库设计就是将数据库中的数据实体以及这些数据实体之间关系,进行规划和结构化的过程 在需求分析阶段,设计数据库的一般步骤 A. 收集相信 B. 标识实体 C. 标记每个实体需要存储的 ...

  9. JAVA Day10

      使用继承 编写继承: class Engineer{ //公共的属性和方法 }   编写子类,继承父类, class SoftEnineer extends Enginerr{ //子类持有的属性 ...

  10. JAVA Day9

    1.StringBuffer类 优点: 内存的管理! StringBuffer: String 增强版 StringBuffer sb = new StringBuffer(); StringBuff ...