软件测试入门 1—— junit 单元测试
一、实验主要内容:
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 单元测试的更多相关文章
- Spring的AOP开发入门,Spring整合Junit单元测试(基于ASpectJ的XML方式)
参考自 https://www.cnblogs.com/ltfxy/p/9882430.html 创建web项目,引入jar包 除了基本的6个Spring开发的jar包外,还要引入aop开发相关的四个 ...
- 十二 Spring的AOP开发入门,整合Junit单元测试(AspectJ的XML方式)
创建web项目,引入jar包 引入Spring配置文件
- Java反射学习总结终(使用反射和注解模拟JUnit单元测试框架)
转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 本文是Java反射学习总结系列的最后一篇了,这里贴出之前文章的链接,有兴趣的可以打开看看. ...
- 【Java】Junit单元测试
什么是单元测试? 单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证. 对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具体含义,如C语言中单元指一个函数,Ja ...
- junit单元测试(keeps the bar green to keeps the code clean)
error是程序错误,failure是测试错误. junit概要: JUnit是由 Erich Gamma (设计模式的创始人)和 Kent Beck (敏捷开发的创始人之一)编写的一个回归测试框架( ...
- spring && Cobertura && maven &&junit 单元测试以及测试覆盖率
1. 目的: junit 单元测试,Cobertura 测试覆盖率报告 项目目录结构 2. maven 配置 <project xmlns= ...
- 解决Junit单元测试 找不到类 ----指定Java Build Path
做junit 单元测试时,发现怎么执行都是以前编译过得代码. 最后找到原因了, src/test/java 编译完的.class路径是 Default output folder Default ou ...
- JUnit单元测试框架的使用
http://blog.csdn.net/mao520741111/article/details/51462215 原文地址 http://www.open-open.com/lib/view/op ...
- Java 工具 JUnit单元测试
Java 工具 JUnit单元测试 @author ixenos 1.1. JUnit单元测试框架的基本使用 一.搭建环境: 导入junit.jar包(junit4) 二.写测试类: 0,一般一个 ...
随机推荐
- SQL SERVER 2012数据库自动备份的方法
SQL SERVER 2012数据库自动备份的方法 为了防止数据丢失,这里给大家介绍SQL SERVER2012数据自动备份的方法: 一.打开SQL SERVER 2012,如图所示: 服务器类型:数 ...
- Java发出声卡蜂鸣生的方法
方法一: Toolkit.getDefaultToolkit().beep(); 方法二: System.out.println('\007');//八进制数
- unix环境高级编程一书中部分错误处理函数
#include <unistd.h> #include <errno.h> #include <string.h> #include <stdio.h> ...
- 文档处理jQuery,实现添加删除复制
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- kubernetes搭建dashboard-v1.10.1
一键部署脚本(或者可使用helm安装): wget https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/ ...
- TP5数据库操作方法总结
一.TP5数据库操作方法 1.name()方法 作用 : 指定默认的数据表名(不含前缀) 示例 : Db::name('weiba_post'); 返回 : ...
- Yii2.X 如何避开pathinfo不能处理中文名开头的bug
/** * @return string original file base name */ public function getBaseName() { // https://github.co ...
- Python学习笔记(七)加密加盐
MD5加密和加盐 Python的MD5加密 Python的hashlib模块的MD5加密,是比较简单一种加密,md5函数必须传入编译后的结果,否则会报错: Traceback (most recent ...
- 【转】iPhone通讯录AddressBook.framework和AddressBookUI.framework的应用
通讯录中联系人相关的应用iPhone提供了两个框架:AddressBook.framework和AddressBookUI.framework,使用这两个框架我们可以在程序中访问并显示iPhone数据 ...
- 机顶盒demux的工作原理
在机顶盒中demux部分相对来说是比较复杂的部分,对于机顶盒软件开发的新手来说通常在这里会遇到一些困难,今天特意研究了一下驱动层代码,有一点自己的理解,因此写下来记录一下学习过程. 机顶盒中数据是如何 ...