前几天刚刚接触软件测试,这篇文章主要是介绍使用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:

详细可以参考:http://wenku.baidu.com/link?url=lNBk9LfN8Sle4022v9UU9DZKdxgpna8Yt57yI9PJCgH1qlpaDlvnvT4eT7tgXnpK8CvTGThnXok6l_4APEI2E-r_SI0d1H1YfLUZ94bREPu

初学软件测试之——如何使用Junit4的更多相关文章

  1. 《Google软件测试之道》基础

    <Google软件测试之道>,一直听朋友讲起这本书,出于琐事太多,一直没机会拜读,最近部门架构觉得我们IT部门的技术太low,就给我们挑选了一些书籍,让我们多看看... 个人的一种学习习惯 ...

  2. google软件测试之道--读后笔记

         看完google软件测试之道,以前有认真看过一次,今天又重新看了一遍.   在google,测试人员严格区分为SET和TE.SET前期深度参与项目的开发,推动开发人员的自测,从破坏者的角度寻 ...

  3. 小课堂week14 Google软件测试之道

    读<Google软件测试之道> 在IT领域,Google是一面旗帜,是一家非常善于思考善于尝试的公司.随着面临挑战的不断增大,传统的测试开展方式也越来越力不从心,这本书讲述的就是一次完整的 ...

  4. [转载]软件测试之Web测试经典总结

    转载自:软件测试之Web测试经典总结 基于Web的系统测试在基于Web的系统开发中,如果缺乏严格的过程,我们在开发.发布.实施和维护Web的过程中,可能就会碰到一些严重的问题,失败的可能性很大.而且, ...

  5. google软件测试之道读后感(一)

    这几天在抽空读一本新书,久负盛名的<google软件测试之道>.之前在网络上一点一点地看过它的英文版,很受触动,还做了很长的读书笔记,现在看到了中文版,才恍觉之前的好些理解存在不恰当的地方 ...

  6. 《微软的软件测试之道》【PDF】下载

    <微软的软件测试之道>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382291 内容简介 书的第三部分探讨某些我们工作中使用过的 ...

  7. 《Google软件测试之道》【PDF】下载

    <Google软件测试之道>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382198 内容介绍 每天,Google都要测试和发布 ...

  8. 软件测试之实际工作工作方式001--log4

    软件测试之实际工作工作方式001--log4 Dotest软件测试-董浩整理   领导安排任务后:   1)首先要确认理解:是指的某工作吗?具体有什么要求吗?时间截止到什么时候? 解析:   a.万一 ...

  9. 软件测试之adb命令-实际公司使用场景--今日log

    软件测试之adb命令-实际公司使用场景--今日log Dotest-董浩整理 1)可以看内存泄漏: 2)可以安装.卸载app--截图并提交bug: 3)可以通过抓app日志定位问题: 4)可以结合mo ...

随机推荐

  1. 问题(the question)

    I want to know: 1. 软件开发最主要的目的 是什么? 2. 软件开发是否同样需要模,和架构? 3.软件开发与其他程序的需求分析是否相似,有什么不同之处? 4.软件开发最常用的计算机语言 ...

  2. Android端接收和发送cookie

    流程: 首先android端使用HttpClient的方式发送HTTP请求,此时服务器创立cookie,并发送cookie给android端,android端再将cookie保存起来,在需要发送coo ...

  3. 使用holder进行内存管理

    在C++中,我们使用new 和delete进行自己的内存管理. void test_func() { someType *ptr = new someType; //使用ptr ptr->fun ...

  4. Jvascript简介

    一.Javascript就是我们所说的脚本语言.它不同于C++/java等语言,它更加灵活! 正因为其灵活性,没有那么多的规章制度,也是我们容易学的地方,但很多时候也是 令人无奈的地方! 二.我们要知 ...

  5. 【iCore3应用开发平台】发布 iCore3 应用开发平台使用说明

    PDF下载地址:http://pan.baidu.com/s/1c2ca2lU

  6. hihoCoder 1185 连通性·三(Tarjan缩点+暴力DFS)

    #1185 : 连通性·三 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 暑假到了!!小Hi和小Ho为了体验生活,来到了住在大草原的约翰家.今天一大早,约翰因为有事要出 ...

  7. insert操作卡死的处理过程

    insert操作卡死的处理过程 先看看insert为什么被卡死 SQL> select sql_id from v$sql where sql_text like 'delete from st ...

  8. 关于页面中table中相同的列自动合并

    代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w ...

  9. Codevs 2370 小机房的树 LCA 树上倍增

    题目描述 Description 小机房有棵焕狗种的树,树上有N个节点,节点标号为0到N-1,有两只虫子名叫飘狗和大吉狗,分居在两个不同的节点上.有一天,他们想爬到一个节点上去搞基,但是作为两只虫子, ...

  10. java中Collections.sort排序详解

    Comparator是个接口,可重写compare()及equals()这两个方法,用于比价功能:如果是null的话,就是使用元素的默认顺序,如a,b,c,d,e,f,g,就是a,b,c,d,e,f, ...