11th 单元测试工具JUnit的学习
1、写好一个简易的四则运算的程序
UnitTest类文件:
public class UnitTest {
int a;
int b;
int answer;//正确答案
public int plus(int a,int b){
answer = a + b;
return answer;
}
public int minus(int a,int b){
answer = a - b;
return answer;
}
public int multiply(int a,int b){
answer = a * b;
return answer;
}
public int divide(int a,int b){
answer = a / b;
return answer;
}
public int getresult()
{
return answer;
}
}
Expression类文件:
import java.util.*;
public class Expression {
int a;
int b;
static int c;//用户答案
int answer;//正确答案
static Scanner in=new Scanner(System.in);
public Expression(){
a = new Random().nextInt()%10;
b = new Random().nextInt()%10;
System.out.print(""+a+"+"+b+"=");
}
public static void main(String[] args){
int answer;
Expression expression = new Expression();
UnitTest u = new UnitTest();
answer = u.plus(expression.a, expression.b);
try{
Expression.c = in.nextInt();
}
catch(InputMismatchException e)
{
System.err.println("\nError ,please Enter a Int number");
}
if(answer==c)
{
System.out.print("答对了");
}
else{
System.out.println("答错了");
System.out.println("the answer is "+answer);
}
}
}
2、 添加JUnit4控件
右键工程文件,选择属性(Properties)选项

选择左列Java Bulid Path,点击Library选项卡,之后单击右侧的Add library…

点击其中的JUnit,选择版本为JUnit4


如图,已引入JUnit库文件
3、写测试类
之后,右键UnitTest.java-->New-->JUnit Test Case

选中要测试的方法:

之后MyEclipse会自动生成一个UnitTestTest类,将生成类中的fail方法改为自己的代码即可进行测试。
代码如下:
UnitTestTest类文件
import static org.junit.Assert.*;
import org.junit.Test;
public class UnitTestTest {
public static UnitTest puls = new UnitTest();
public static int answer;
@Test
public void testPlus() {
puls.plus(1,1);
assertEquals(2, puls.getresult());
}
@Test
public void testMinus() {
puls.minus(1,1);
assertEquals(0, puls.getresult());
}
@Test
public void testMultiply() {
puls.multiply(1,1);
assertEquals(1, puls.getresult());
}
@Test(expected=ArithmeticException.class)
public void testDivide1(){
puls.divide(1, 0);
}
@Test
public void testDivide() {
puls.divide(1,1);
assertEquals(1, puls.getresult());
}
}
4、运行测试:
右键JUnitTestTest,Run As-->JUnit Test

测试结果显示代码无误,没有bug,不需要更改。
本文的实际操作学习自网上,现提供原学习文档网址,供大家借鉴:http://www.tuicool.com/articles/fArMFjJ
11th 单元测试工具JUnit的学习的更多相关文章
- 单元测试工具Junit浅谈
什么是单元测试? 写了一个类和一些方法,给别人用,会不会有bug?那就测一下这些方法吧 怎么测? 用main方法测?不能一起运行,需要人为观察输出是否正确,测试效率低 单元测试能带来什么好处? ...
- Maven的安装配置及初次创建项目与java单元测试工具JUnit
Maven 安装 1.把maven安装包解压到某个位置 2.配置M2_HOME环境变量指向这个位置 3.在path环境变量中添加;%M2_HOME%\bin 配置镜像 国内的阿里云镜 ...
- 测试 | 单元测试工具 | JUnit | 参数化
被测试类: package project; public class MyCalendar2 { public int getNumberOfDaysInMonth(int year, int mo ...
- 测试 | 单元测试工具 | JUnit
http://junit.sourceforge.net/javadoc/org/junit/Assert.html 使用: 新建测试类: 在预测试的类上点击右键--->NEW--->Ju ...
- Hibernate单元测试工具junit
相关注解 @Text :测试方法 @Before :初始化方法 @After : 释放资源
- [转]单元测试利器 JUnit 4
引言 毋庸置疑,程序员要对自己编写的代码负责,您不仅要保证它能通过编译,正常地运行,而且要满足需求和设计预期的效果.单元测试正是验证代码行为是否满足预期的有效手段之一.但不可否认,做测试是件很枯燥无趣 ...
- Java知识积累——单元测试和JUnit(一)
说起单元测试,刚毕业或者没毕业的人可能大多停留在课本讲述的定义阶段,至于具体是怎么定义的,估计也不会有太多人记得.我们的教育总是这样让人“欣 慰”.那么什么是单元测试呢?具体科学的定义咱就不去关心了, ...
- 单元测试利器 JUnit 4
引言 毋庸置疑,程序员要对自己编写的代码负责,您不仅要保证它能通过编译,正常地运行,而且要满足需求和设计预期的效果.单元测试正是验证代码行为是否满足预期的有效手段之一.但不可否认,做测试是件很枯燥无趣 ...
- Java程序单元测试工具对比——Parasoft Jtest与Junit
Web应用程序开发中,面向对象的Java语言占了不少的比重.对于Java应用程序的测试方法或方式多种多样,比较典型的是程序员自己来完成程序测试中的一个部分——单元测试. 之前,慧都资讯提到单元测试是程 ...
随机推荐
- 20155213 《网络攻防》 Exp1 PC平台逆向破解
20155213 <网络攻防> Exp1 PC平台逆向破解(5)M 实践内容 通过对实践对象--pwn20155213的linux可执行文件的修改或输入,完成以下三块: 手工修改可执行文件 ...
- 用 eric6 与 PyQt5 实现python的极速GUI编程(系列03)---- Drawing(绘图)(3)-- 画线
[概览] 本文实现如下的程序:(在窗体中绘画出各种不同风格的线条) 主要步骤如下: 1.在eric6中新建项目,新建窗体 2.(自动打开)进入PyQt5 Desinger,编辑图形界面,保存 3.回到 ...
- PyQt5 笔记(04):主窗口卡死问题
本文基于:windows 7 + python 3.4 知识点: 1. 将 time.sleep 替换为 QTimer 2. 将 time.sleep 放入到 QThread 3. 使用 QThrea ...
- matplotlib雷达图
用matplotlib画雷达图,网上流传的版本其实都是官网的一个例子.但是那个例子太复杂,而且它封装了几个类,让人难以一眼看出其本质. 我给出一个简单的解决方法,没有任何封装.作本文的原因,是为了回答 ...
- spring学习笔记 星球日two - 注解方式配置bean
注解要放在要注解的对象的上方 @Autowired private Category category; <?xml version="1.0" encoding=" ...
- intellIJ IDEA配置maven相关问题记录
IntellIJ IDEA 配置 Maven 以及 修改 默认 Repository 参考:https://www.cnblogs.com/phpdragon/p/7216626.html non-m ...
- pycharm导入路径问题
博主在导入自定义模块式出现模块下有红色波浪线,如下: 例如from conf import setting 导入时会从当前目录下找找到youkuClient就不会再往下找了,所以引入模块的路径不能夸路 ...
- Sqlite数据库sqlite3命令小记
SQLite库包含一个名字叫做sqlite3的命令行,它可以让用户手工输入并执行面向SQLite数据库的SQL命令.本文档提供一个样使用sqlite3的简要说明. 开始 启动sqlite3程序,仅仅需 ...
- 从hs_strcpy谈安全——缓冲区溢出
对于大多数的博友来说,hs_strcpy一定会很陌生,因为这个hs_strcpy这个关键字和我的工作有挂钩.本来目前就职于恒生电子,hs_strcpy是中间件中公司定义的字符串拷贝方法,在工作业余之余 ...
- Scrapy爬取携程桂林问答
guilin.sql: CREATE TABLE `guilin_ask` ( `id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '主键', `question ...