一、实验主要内容:

1、

2、EclEmma安装

见: http://www.cnblogs.com/1995hxt/p/5291465.html

二、对与 Junit 安装,使用 maven管理项目,方便jar包的版本管理,冲突管理等等。

三、实验demo

1、方法主类:

package cn.edu.tju.scs;

/**
* Hello world!
*
*/
public class Lab1
{ /**
* 判断是否为三角形,
* 若是,是否是等腰或者等边
* @param a
* @param b
* @param c
* @return -1 :不是; 0:普通三角形;1 等腰三角形;2:等边三角形
*/
public static int judgeTri(int a,int b,int c){
System.out.println("参数: " + a + " " + b + " " + c);
int result = -1;
if(a <=0 || b <= 0 || c<= 0){
System.out.println("return -1 --------------: 不是三角形");
return result;
}
if(a + b > c && a + c > b && b + c > a){
result = 0;
if(a == b && a == c){
System.out.println("return 2 --------------: 等边三角形");
result = 2;
}else if(a ==b || a == c || b== c){
System.out.println("return 1 --------------: 等腰三角形");
result = 1;
}else {
System.out.println("return 0 --------------: 普通三角形");
}
}else{
System.out.println("return -1 --------------: 不是三角形");
}
return result;
}
}

2、测试类:

package cn.edu.tju.scs;

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.Arrays;
import java.util.Collection; import static junit.framework.Assert.assertEquals; /**
* Unit test for simple App.
*/
@RunWith(Parameterized.class)
public class Lab1Test {
int expected = 0;
int input1 = 0;
int input2 = 0;
int input3 = 0; /**
* 判断是否为三角形,
* 若是,是否是等腰或者等边
* @return -1 :不是; 0:普通三角形;1 等腰三角形;2:等边三角形
*/ @Parameterized.Parameters
public static Collection<Object[]> t(){
return Arrays.asList(new Object[][]{
{-1,0,0,0},
{-1,1,3,4},
{1,3,3,2},
{2,3,3,3},
{0,4,5,3},
{-1,3,0,-4},
{0,5,7,3},
{1,3,5,5}
});
}
public Lab1Test(int expected,int input1,int input2,int input3){
this.expected = expected;
this.input1 = input1;
this.input2 = input2;
this.input3 = input3;
} @Before
public void before(){
System.out.println("测试开始 - - - - - - - - - - - - - - - - - - - - - - - ");
} @Test
public void testJudgeTri(){
assertEquals(expected,Lab1.judgeTri(input1,input2,input3));
} @After
public void afeter(){
System.out.println("测试结束 - - - - - - - - - - - - - - - - - - - - - - - \n\n");
} }

3、测试结果:

软件测试入门 1—— junit 单元测试的更多相关文章

  1. Spring的AOP开发入门,Spring整合Junit单元测试(基于ASpectJ的XML方式)

    参考自 https://www.cnblogs.com/ltfxy/p/9882430.html 创建web项目,引入jar包 除了基本的6个Spring开发的jar包外,还要引入aop开发相关的四个 ...

  2. 十二 Spring的AOP开发入门,整合Junit单元测试(AspectJ的XML方式)

    创建web项目,引入jar包 引入Spring配置文件

  3. Java反射学习总结终(使用反射和注解模拟JUnit单元测试框架)

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 本文是Java反射学习总结系列的最后一篇了,这里贴出之前文章的链接,有兴趣的可以打开看看. ...

  4. 【Java】Junit单元测试

    什么是单元测试? 单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证. 对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具体含义,如C语言中单元指一个函数,Ja ...

  5. junit单元测试(keeps the bar green to keeps the code clean)

    error是程序错误,failure是测试错误. junit概要: JUnit是由 Erich Gamma (设计模式的创始人)和 Kent Beck (敏捷开发的创始人之一)编写的一个回归测试框架( ...

  6. spring && Cobertura && maven &&junit 单元测试以及测试覆盖率

    1. 目的:       junit 单元测试,Cobertura   测试覆盖率报告       项目目录结构          2. maven 配置     <project xmlns= ...

  7. 解决Junit单元测试 找不到类 ----指定Java Build Path

    做junit 单元测试时,发现怎么执行都是以前编译过得代码. 最后找到原因了, src/test/java 编译完的.class路径是 Default output folder Default ou ...

  8. JUnit单元测试框架的使用

    http://blog.csdn.net/mao520741111/article/details/51462215 原文地址 http://www.open-open.com/lib/view/op ...

  9. Java 工具 JUnit单元测试

    Java 工具 JUnit单元测试 @author ixenos 1.1.   JUnit单元测试框架的基本使用 一.搭建环境: 导入junit.jar包(junit4) 二.写测试类: 0,一般一个 ...

随机推荐

  1. iOS 闭包传值 和 代理传值

    let vc = ViewController() let navc = UINavigationController(rootViewController: vc) window = UIWindo ...

  2. 记录一下CSS outline-width 属性

    outline(轮廓)是绘制于元素周围的一条线,位于边框边缘的外围. outline-width指定轮廓的宽度. 注意: 请始终在outline-width属性之前声明outline-style属性. ...

  3. js基础之语言部分必须要掌握的五大方阵

    javascript基础部分可以从"数组, 函数, 作用域, 对象, 标准库"这5大方阵进行学习: (一).数组 数组的声明(2种):; a,自变量声明 var a = ['a', ...

  4. Everything Be True-freecodecamp算法题目

    Everything Be True 1.要求 完善every函数,如果集合(collection)中的所有对象都存在对应的属性(pre),并且属性(pre)对应的值为真.函数返回ture.反之,返回 ...

  5. C/C++程序基础 (七)继承和多态

    多态 编译时多态:重载 运行时多态:虚函数.根据运行时的类别获取正确的虚指针,从而定位正确的虚函数. 虚函数 虚函数指针:指向虚函数表.多重继承则含有多个基类的虚函数指针. 虚函数表:函数指针集合.普 ...

  6. Log错误日志级别

    日志记录器(Logger)的级别顺序:     分为OFF.FATAL.ERROR.WARN.INFO.DEBUG.ALL或者您定义的级别.Log4j建议只使用四个级别,优先级 从高到低分别是 ERR ...

  7. MySQL表碎片整理

    MySQL表碎片整理 1. 计算碎片大小 2. 整理碎片 2.1 使用alter table table_name engine = innodb命令进行整理. 2.2 使用pt-online-sch ...

  8. java中如何设置HTTP协议的头信息(header)

    首先,我们先看一下http的头信息到底是什么:HTTP(HyperTextTransferProtocol) 即超文本传输协议,目前网页传输的的通用协议.HTTP协议采用了请求/响应模型,浏览器或其他 ...

  9. composer 自动加载源码解析

    一直在用 composer,最近想看一下具体的原理是什么,就仔细阅读了一下源码,一下是个人理解.在看该文章前最好了解一下 PSR-4 自动加载规范 引入类自动加载文件 # 加载类自动加载文件 requ ...

  10. js控制台输出图案

    控制台输出图案 console.log([ " _ooOoo_", " o8888888o", " 88\" . \"88&quo ...