初学软件测试之——如何使用Junit4
前几天刚刚接触软件测试,这篇文章主要是介绍使用eclipse的插件——Junit4进行单元测试。下面先介绍一下单元测试的定义:单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具体含义,如C语言中单元指一个函数,Java里单元指一个类,图形化的软件中可以指一个窗口或一个菜单等。总的来说,单元就是人为规定的最小的被测功能模块。单元测试是在软件开发过程中要进行的最低级别的测试活动,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。(摘自百度百科)。总之,单元测试其实就是针对一个函数或者一个简单的功能的检查。
下面介绍如何使用Junit4:
1.打开eclipse,新建一个Java Project,写几个函数,下面是我写的一个计算器的类:
public class Operator {
int a;
int b;
Operator(int c,int d){
a=c;
b=d;
}
/*
* 加法计算
*/
public int GetAddResult(){
return a+b;
}
/*
* 减法计算
*/
public int GetSubResult(){
return a-b;
}
/*
* 除法计算
*/
public double GetDivResult(){
return a/b;
}
/* public double GetDivResult(){
double z=0;
try{z=(double)a/(double)b;}
catch(ArithmeticException ari){
System.out.println("除数不能为0");
}
finally{
return z;
}
}*/
/*
* 乘法计算
*/
public int GetMulResult(){
return a*b;
}
}
2.右键单击工程,选择Propreties->Java Build Path->Libraries->Add Library:
选择Junit,单击next,选择Junit4

3.右键你要测试的类,选择New->Junit Test Case:

4.单击next,选择你要测试的类的方法,Finish,这样,一个测试类就建好了,你可以根据自己的代码进行修改测试:

5.我修改好的代码测试是这样的:
import static org.junit.Assert.*;
import junit.framework.TestCase; import org.junit.Before;
import org.junit.Test;
import org.junit.After; public class OperatorTest { @Before
public void setUp() throws Exception {
} @Test
public void testGetAddResult() {
Operator op=new Operator(7,5);
int result=op.GetAddResult();
assertEquals(12, result);
} @Test
public void testGetSubResult() {
Operator op=new Operator(7,5);
int result=op.GetSubResult();
assertEquals(2, result);
} @Test(expected=ArithmeticException.class)
public void testGetDivResult() {
Operator op=new Operator(7,0);
op.GetDivResult(); } @Test
public void testGetMulResult() {
Operator op=new Operator(7,5);
int result=op.GetMulResult();
assertEquals(35, result);
} }
6.运行结果:右键测试类,选择Run as ->JUnit Test:

初学软件测试之——如何使用Junit4的更多相关文章
- 《Google软件测试之道》基础
<Google软件测试之道>,一直听朋友讲起这本书,出于琐事太多,一直没机会拜读,最近部门架构觉得我们IT部门的技术太low,就给我们挑选了一些书籍,让我们多看看... 个人的一种学习习惯 ...
- google软件测试之道--读后笔记
看完google软件测试之道,以前有认真看过一次,今天又重新看了一遍. 在google,测试人员严格区分为SET和TE.SET前期深度参与项目的开发,推动开发人员的自测,从破坏者的角度寻 ...
- 小课堂week14 Google软件测试之道
读<Google软件测试之道> 在IT领域,Google是一面旗帜,是一家非常善于思考善于尝试的公司.随着面临挑战的不断增大,传统的测试开展方式也越来越力不从心,这本书讲述的就是一次完整的 ...
- [转载]软件测试之Web测试经典总结
转载自:软件测试之Web测试经典总结 基于Web的系统测试在基于Web的系统开发中,如果缺乏严格的过程,我们在开发.发布.实施和维护Web的过程中,可能就会碰到一些严重的问题,失败的可能性很大.而且, ...
- google软件测试之道读后感(一)
这几天在抽空读一本新书,久负盛名的<google软件测试之道>.之前在网络上一点一点地看过它的英文版,很受触动,还做了很长的读书笔记,现在看到了中文版,才恍觉之前的好些理解存在不恰当的地方 ...
- 《微软的软件测试之道》【PDF】下载
<微软的软件测试之道>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382291 内容简介 书的第三部分探讨某些我们工作中使用过的 ...
- 《Google软件测试之道》【PDF】下载
<Google软件测试之道>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382198 内容介绍 每天,Google都要测试和发布 ...
- 软件测试之实际工作工作方式001--log4
软件测试之实际工作工作方式001--log4 Dotest软件测试-董浩整理 领导安排任务后: 1)首先要确认理解:是指的某工作吗?具体有什么要求吗?时间截止到什么时候? 解析: a.万一 ...
- 软件测试之adb命令-实际公司使用场景--今日log
软件测试之adb命令-实际公司使用场景--今日log Dotest-董浩整理 1)可以看内存泄漏: 2)可以安装.卸载app--截图并提交bug: 3)可以通过抓app日志定位问题: 4)可以结合mo ...
随机推荐
- Django框架初入
一.Django 特性 数据库功能强大(利用python的类继承,几行代码就可以实现一个动态的数据库操作接口(API)) 强大的后台功能 优雅的网址(正则匹配网址,传递到对应函数) 模板与缓存系统 二 ...
- scala and machine learning
http://download.csdn.net/album/detail/3376 scala and machine learning
- ZK listbox 两种分页使用及比较
参考:http://tsinglongwu.iteye.com/blog/849923 以下代码模拟数据量大时情况,采用“<paging>”组件方式 前台Listbox.zul : < ...
- centos建立回收站
linux下的回收站在每一个当前用户目录./local/share/Trash中. 也可以给linux添加一个回收站. mkdir /tmp/trash_tmp 建立一个回收站目录 vi /bin/t ...
- Slave作为其它Slave的Master时使用
主从配置需要注意的点 (1)主从服务器操作系统版本和位数一致: (2) Master和Slave数据库的版本要一致: (3) Master和Slave数据库中的数据要一致: (4) Master开启二 ...
- mysql大表myisam的导入
在my.cnf中增大以下参数 myisam_sort_buffer_size = 1024Mtmp_table_size = 256M tmpdir = /home/tmpmyisam_max_sor ...
- 利用jemalloc优化mysql
一.下载安装jemalloc #wget http://www.canonware.com/download/jemalloc/jemalloc-3.6.0.tar.bz2 #tar jxvf jem ...
- js windows.open()模拟POST提交
function openPostWindow (url,name, data1, data2) { var tempForm = document.createE ...
- 个人理解java的继承
java的类是属于单继承的.在继承这一块上我本来有一个很大的误区,就是觉得父类中private定义的成员无法被继承.直到网上的大神给我指出private是可以被继承的,会在内存中,只是在子类的对象中不 ...
- status bar、navigationBar、tableView吸顶view设置
1. 隐藏navigationBar self.navigationController.navigationBar.hidden = YES; 2. status bar设置 -(void)view ...