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 ...
随机推荐
- 使用Maven分环境打包:dev sit uat prod
使用Maven管理的项目,经常需要根据不同的环境打不同的包,因为环境不同,所需要的配置文件不同,比如database的连接信息,相关属性等等. 在Maven中,我们可以通过P参数和profiles元素 ...
- [bug] 验证selenium的显式和隐式等待而发现的一个低级错误
隐式等待:如果在规定时间内网页加载完成,则执行下一步,否则一直等到时间截止,然后执行下一步.按照这说法举了个例子为啥不会按照预期执行了,难不成是这个定义有问题(~~~~~直接否定不是定义的问题,相信它 ...
- 【原创】Linux常用命令记录
1. 查看网络状态分布 #!/bin/sh netstat -apn >/dev/ \ | awk 'BEGIN {printf("%-15s%-15s%-15s%-15s\n&quo ...
- c++のurlmon实现下载文件并进度回调
主文件: #include "stdafx.h" #include <UrlMon.h> #pragma comment(lib, "urlmon.lib&q ...
- Vue仿抽屉
创建VUE项目的步骤: npm install vue-cli -g vue init webpack myproject cd myproject npm run dev 组件:它是可扩展的html ...
- luogu P4146 序列终结者
嘟嘟嘟 这是一道splay基础题. 最坑的一点是,因为有些节点可能没有左儿子或右儿子,所以必须把t[0].Max赋成-INF! 因为这个调了半天,看来回头复习复习splay是对的-- #include ...
- Excel中concatenate函数的使用方法
你还在为Excel中concatenate函数的使用方法而苦恼吗,今天小编教你Excel中concatenate函数的使用方法,让你告别Excel中concatenate函数的使用方法的烦恼. 经验主 ...
- 谈谈maven多模块
记得在校的时候,通常用的比较多是动态web工程,动态web工程导入最多就是jar包,这些jar包需要自己手动复制粘贴放入lib目录下,然后build path,有的IDE会自动build path有的 ...
- 深入浅出的webpack构建工具---devTool中SourceMap模式详解(四)
阅读目录 一:什么是SourceMap? 二:理解webpack中的SourceMap的eval,inline,sourceMap,cheap,module 三:开发环境和线上环境如何选择source ...
- Sublime Text 3 Build 3143 可用License
—– BEGIN LICENSE —–TwitterInc200 User LicenseEA7E-8900071D77F72E 390CDD93 4DCBA022 FAF6079061AA12C0 ...