一、Junit简介

JUnit是一个Java语言的单元测试框架。它由Kent Beck和Erich Gamma建立,逐渐成为源于Kent Beck的sUnit的xUnit家族中最为成功的一个。 JUnit有它自己的JUnit扩展生态圈。多数Java的开发环境都已经集成了JUnit作为单元测试的工具。

JUnit是由 Erich Gamma 和 Kent Beck 编写的一个回归测试框架(regression testing framework)。Junit测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何(How)完成功能和完成什么样(What)的功能。Junit是一套框架,继承TestCase类,就可以用Junit进行自动测试了。

二、使用过程

2.1,首先,下载JUnit的jar包,引入到项目中

project——properties——java build path——libraries——add external jars或者说就直接将jar包拷到jar文件库中!

2.2,建立一个测试文件夹,存放测试类

备注;就跟.NET中,建立一个类库一样,不建也可以,但是建立一个专门的测试文件夹,这样结构上比较明确。

2.3,编写测试类(继承TestCase),执行测试方法。

例如,想要测试UserManager类里面的方法:

UserManager类(被测试的类):

<span style="font-family:KaiTi_GB2312;font-size:18px;">package com.angel.hibernate;

public class UserManager {

	public void add(String username){
System.out.println("UserManager.add()"+username);
} public void del(String username){
System.out.println("UserManager.del()"+username);
} public String findUserById(String userId){
return "Tom";
}
}
</span>

UserMangerTest类(测试类):

直接在测试文件夹的测试包下面,新建一个类,这个类继承TestCase类:

<span style="font-family:KaiTi_GB2312;font-size:18px;">package com.angel.hibernate;

import junit.framework.Assert;
import junit.framework.TestCase; public class UserManagerTest extends TestCase { public void testAdd(){
UserManager userManager=new UserManager();
userManager.add("Jack");
System.out.println("UserManagerTest.testAdd()");
} public void testDel(){
UserManager userManager=new UserManager();
userManager.del("Andy");
System.out.println("UserManagerTest.testDel()");
} public void testFindUserById(){
UserManager userManager=new UserManager();
String username=userManager.findUserById("0001");
System.out.println(username);
String expected="Tom";
Assert.assertEquals(expected, username);
}
}</span>

使用断言,判断实际值和期待值,其测试结果:

三、总结

测试的重要性,不用多说。但是,测试的习惯,对于我个人来说,还需要进一步的加强。JUnit测试,比之前做的.NET的单元测试,感觉要简单很多。所以,从今天起,养成测试代码的好习惯,虽然可能会增加一些负担或者压力,但我相信,做好测试,带来的效果一定是有益的!

【drp 11】使用Junit简单测试接口方法的更多相关文章

  1. Spring Data JPA 简单查询--接口方法

    一.接口方法整理速查 下表针对于简单查询,即JpaRepository接口(继承了CrudRepository接口.PagingAndSortingRepository接口)中的可访问方法进行整理.( ...

  2. Spring Data JPA简单查询接口方法速查

    下表针对于简单查询,即JpaRepository接口(继承了CrudRepository接口.PagingAndSortingRepository接口)中的可访问方法进行整理.(1)先按照功能进行分类 ...

  3. ssm框架junit简单测试_我写

    第一步:导入相关jar包 主要是 junit包,和spring-test包 <dependecy> <groupId>junit</groupId> <art ...

  4. CURL常用命令记录--用于简单测试接口

    curl命令是一个利用URL规则在命令行下工作的文件传输工具.它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称curl为下载工具.作为一款强力工具,curl支持包括HTTP.HTTPS.f ...

  5. JUnit中测试异常抛出的方法

    最近在做TWU关于TDD的作业,对JUnit中测试异常抛出的方法进行了一些学习和思考. 在进行单元测试的时候有的时候需要测试某一方法是否抛出了正确的异常.例如,我有一个方法,里面对一个List进行读取 ...

  6. junit测试延伸--方法的重复测试

    在实际编码测试中,我们有的时候需要对一个方法进行多次测试,那么怎么办呢?这个问题和测试套件解决的方案一样,我们总不能不停的去右键run as,那怎么办呢?还好伟大的junit帮我们想到了. OK,现在 ...

  7. Java高级特性 第11节 JUnit 3.x和JUnit 4.x测试框架

    一.软件测试 1.软件测试的概念及分类 软件测试是使用人工或者自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别.它是帮助识别开发完成(中间或最终 ...

  8. SoapUI 利用SoapUI进行简单的接口并发测试

    利用SoapUI进行简单的接口并发测试 by:授客 QQ:1033553122 测试环境: SoapUI Pro 5.1.2 步骤如下 1.   把请求添加到测试套件 1.1.     途径1 1.新 ...

  9. junit参数化测试的使用方法

    JUnit参数化测试的五个步骤:(1)为准备使用参数化测试的测试类指定特殊的运行器 org.junit.runners.Parameterized.(2)为测试类声明几个变量,分别用于存放期望值和测试 ...

随机推荐

  1. Cygwin之SSH服务安装过程问题

    1.折磨了最长时间的一个问题 $ ssh localhostssh: connect to host localhost port 22: Connection refused 各种google,百度 ...

  2. 6. redis持久化,认证

    一. RDB 快照持久化 (默认) rdb机制,在满足redis.conf中配置的持久化策略后, 自动持久化数据, 默认存储在dump.rdb文件中 策略 : save 900 1 : 900秒内,一 ...

  3. DBA_Oracle Sort排序处理空间耗用(概念)

    2014-12-18 Created By BaoXinjian

  4. HDU 2717 Catch That Cow(BFS)

    Catch That Cow Farmer John has been informed of the location of a fugitive cow and wants to catch he ...

  5. java finally中含return语句

    <java核心技术卷一>中提到过:当finally子句包含return 语句时(当然在设计原则上是不允许在finally块中抛出异常或者 执行return语句的,我不明白为何java的设计 ...

  6. window.print实现打印特定控件或内容

    window.print打印指定div 首先我们可以把要打印的内容放在div中,然后用下面的代码进行打印. <html> <head> <script language= ...

  7. Python深入05 装饰器

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 装饰器(decorator)是一种高级Python语法.装饰器可以对一个函数.方法 ...

  8. Python进阶04 函数的参数对应

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 我们已经接触过函数(function)的参数(arguments)传递.当时我们根 ...

  9. DataTable的Merge使用

    using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.T ...

  10. 写代码的自动提示是怎么出来的...我的WebStorm中不能自动提示Bootstrap中的样式呢

    首先开启自动提示 File -> Settings ->Editor ->Code Completion ->Preselect the first suggestion:,将 ...