Junit4测试用例
一、题目简介
测试一元一次方程的求解
二、源码的github链接
三、所设计的模块测试用例、测试结果截图
import static org.junit.Assert.*;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.JUnitCore;
public class MyMathTest
{
//将需要测试的类,声明成成员变量
MyMath math;
//每次运行测试方法之前都会运行该方法
@Before
public void setUp()
{
math=new MyMath();
}
//每次运行测试用例之后都会运行该方法
@After
public void tearDown()
{
math=null;
}
//测试一元一次方程的求解
//expected=ArithmeticException.class
//相当于断言该测试方法将会抛出ArithmeticException异常
@Test(expected=ArithmeticException.class)
public void testOneEquation()
{
System.out.println("=================================");
System.out.println("=================================");
System.out.println("测试一元一次方程求解");
//断言该方程求解应该为-1.8
assertEquals(math.oneEquation(5,9),-1.8,.00001);
//断言当a==0时的情况
assertEquals(math.oneEquation(0,3),-1);
}
//测试一元二次方程的求解
@Test
public void testTwoEquation()
{
System.out.println("=================================");
System.out.println("=================================");
System.out.println("测试一元二次方程求解");
double[] tmp=math.twoEquation(1,-3,2);
//断言方程的两个解,一个为2,一个为3
assertEquals("第一个解出错",tmp[0],2,.00001);
assertEquals("第二个解出错",tmp[1],3,.00001);
}
//程序的入口,直接运行该测试用例
public static void main(String[] args)
{
//运行单个的测试用例
JUnitCore.main("junittest.MyMathTest");
}
}
测试结果截图:

四、问题及解决方案、心得体会
在本次实验中,我懂得了使用Junit4应守如下规则
(1)测试用例类使用public修饰
(2)测试用例的测试方法使用public修饰
(3)测试用例的测试方法的返回值应该是void
(4)测试用例中测试方法不应该有任何参数
JUnit4详解、
1.@Test用来标注测试函数
2.@Before用来标注此函数在每次测试函数运行之前运行
3.@After用来标注此函数在每次测试函数运行之后运行
4.@BeforeClass用来标注在测试开始时运行;
5.@AfterClass 用来标注在测试结束时运行;
6.Assert类中有很多断言,比如assertEquals("期望值","实际值");
Assert类提供了大量的断言方法,包括基本断言,数字断言,字符断言,布尔断言,对象断言。其中assertEquals(Object expected,Object actual)内部使用equals()方法,用于判断两个对象的值是否相等.assertSame(Object expected,Object actual)内部采用"=="判断,用于判断两个对象是否来自于同一个引用.
学习过程中发现许多不足,还要跟同学们进行探讨,以便更好的学习。
Junit4测试用例的更多相关文章
- IDEA Junit4配置
一.安装JUnitGenerator V2.0. 1.通过网络安装.如下 2.手动下载插件安装.插件下载:https://plugins.jetbrains.com/idea/plugin/3064- ...
- 【Selenium】idea的selenium环境配置
1.maven配置 下载地址:http://maven.apache.org/download.cgi# 下载内容:apache-maven-3.5.0-bin.zip 环境变量:M2_HOME:E: ...
- 【转】Java JUnit 单元测试小结
原文链接:https://segmentfault.com/a/1190000006731125 测试类型 单元测试(Unit test) 单元测试关注单一的类. 它们存在的目的是检查这个类中的代码是 ...
- Junit核心——测试类(TestCase)、测试集(TestSuite)、测试运行器(TestRunner)
首先,把这三个定义简单的说明一下: 1.测试类(TestCase):一个包含一个或是多个测试的类,在Junit中就是指的是包含那些带有@Test注解的方法的类,同一样也被称作“测试用例”; 2.测试集 ...
- Robotium编写测试用例如何模拟Junit4的BeforeClass和AfterClass方法2 - SingleLaunchActivityTestCase
本文来源于:http://blog.csdn.net/zhubaitian/article/details/39296753 在上一遍笔记博客中本以为只能在Setup和TearDown中做条件判断来实 ...
- Robotium编写测试用例如何模拟Junit4的BeforeClass和AfterClass方法1 - 条件判断法
本文来源于:http://blog.csdn.net/zhubaitian/article/details/39293883 Robotium的测试类ActivityInstrumentationTe ...
- 如何使用junit4写单元测试用例(转)
JUnit4是JUnit框架有史以来的最大改进,其主要目标便是利用Java5的Annotation特性简化测试用例的编写. 先 简单解释一下什么是Annotation,这个单词一般是翻译成元数据.元数 ...
- 老李分享:Robotium编写测试用例如何模拟Junit4的BeforeClass和AfterClass方法1 - 条件判断法
老李分享:Robotium编写测试用例如何模拟Junit4的BeforeClass和AfterClass方法1 - 条件判断法 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜 ...
- junit4.9测试用例 spring测试用例 Assert 注解
junit4.9测试用例 测试基类 import org.junit.runner.RunWith; import org.springframework.test.context.ContextCo ...
随机推荐
- node及socket.io实现简易websocket双向通信
技术栈: vue2.0 + node + websocket( socket.io ) 1. 安装依赖 初始化vue项目后输入下方指令安装依赖包 // 推荐cnpm安装 npm i vue-socke ...
- sys.argv[]使用
sys.argv[]说白了就是一个从程序外部获取参数的桥梁,这个"外部"很关键,所以那些试图从代码来说明它作用的解释一直没看明白.因为我们从外部取得的参数可以是多个,所以获得的是一 ...
- 「JoyOI1080」N皇后
这是菜鸡的我第一次写这类题目: 题意:就是在N*N的棋盘上,每一行,每一列,所有的对角线都只能有一个棋子. 先分析:假若N=4: 则为其中的一种答案.要输出左右的解,肯定要枚举出所有的解.那么非常自然 ...
- Excel中IF函数的嵌套用法(多条件)
Excel中IF函数的嵌套用法(多条件) Excel中IF函数的嵌套用法(多条件) 函数格式:if(logical_test,value_if_true,value_if_false).其中: ...
- Android 其他特效展示
Android开源项目发现----其他特殊效果篇(持续更新) 发表时间:2014-03-01 15:10:10 来源:本站整理 浏览(160) Android开源项目发现----其他特殊效 ...
- SkylineGlobe 如何实现绘制圆形Polygon和对图层的圆形范围选择查询
//结束绘制圆形之前,得到Polygon var pos = gPolyObj.Position; var bufferR = gPolyObj.Radius; var cVerticesArray ...
- 一、java虚拟机内存区域
内存区域 java虚拟机在java程序的过程中会把它所管理的内存划分为若干个不同的数据区域.java虚拟机规范将JVM管理的内存分为:程序计数器.本地方法栈.Java虚拟机栈.方法区.Java堆.如下 ...
- day89
跨域问题 同源策略(Same origin policy) 是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响.可以说Web是构建在同源策略基础之上 ...
- Python文学家为Python写的一首词?(附中英文版)
The Zen of Python, by Tim Peters (Python之禅 by Tim Peters) Beautiful is better than ugly. (优美胜于丑陋(Pyt ...
- ES6-课程介绍
ES6 可以提高开发效率,把ES3比做斧头,ES5比做锯子,那么ES6就是电锯. ES6新特性 默认参数.字符串模板.结构赋值.箭头函数.set\mat .异步操作.类和对象 .模块化