- 浏览: 286176 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
梦醒无尘:
异步处理框架已经用到项目上,感谢你利用休息时间创造出一款舒服的 ...
asyn4j 1.2 发布 -
xiaokang1582830:
有一点没有考虑到的就是是否可以提供目前已经在调用的calss和 ...
asyn4j -- 异步方法调用框架 -
snowolf:
记得曾经实现过iBatis+EhCache,实现了一个iBat ...
让ibatis 支持 memcached -
bsspirit:
很好,很好!!
java annotation 实例 -
ij仔:
...
Statement,PreparedStatement区别
junit 4x 相比 junit3.8大量使用了 annotation .
主程序
测试程序
测试方法在junit4.x中必顺是public void ,但测试方法不做要求,不像3.8一样以test开头.类也不用继承TestCase
1.简单测试
2.指定异常
3.指定程序运行的延时
4.@Before,@After
注init,destory分别会执行两次,有多少个测试方法就会分别执行多少次
5 @BeforeClass,@AfterClass
6 @Ignore
7@Suite (批量测试)
新增主程序
新增测试程序
使用批量测试
junit 将同时执行TestCompalbe,TestCompable2中的全部测试方法
同时SuitTest 还可以包括在其他的批量测试程序中
如@Suite.SuiteClasses({SuitTest1.class,SuitTest2.class})这样就可以方便去测试包,和JAR的测试程序.
@RunWith(Suite.class) 表示利用那种运行器,同时还可以自定义运行器超类(org.junit.runner.Runner)
8 私有方法测试
可以使用类的反射机制去加载Class,再获取方法.再去测试这个方法
9 组合查询
测试程序
以上程序将测试{3,2,1},{4,2,2},{-1,-1,0}三种情况
附件包括测试源代码
主程序
public class Compalbe { public int add(int a,int b){ return a+b; } public int div(int a,int b) throws Exception{ return a/b; } }
测试程序
测试方法在junit4.x中必顺是public void ,但测试方法不做要求,不像3.8一样以test开头.类也不用继承TestCase
1.简单测试
public class TestCompalbe { @Test public void testAdd(){ Compalbe com = new Compalbe(); int result = com.add(2, 2); Assert.assertEquals(3, result); } @Test public void testDiv() throws Exception{ Compalbe com = new Compalbe(); int result = com.div(2, 2); Assert.assertEquals(1,result); } }
2.指定异常
public class TestCompalbe { //指定异常 @Test(expected=Exception.class) public void testDiv() throws Exception{ Compalbe com = new Compalbe(); //除数为0异常 int result = com.div(2, 0); Assert.assertEquals(1,result); } }
3.指定程序运行的延时
@Test(timeout=100)//如果超去这个时间则不通过 public void testDiv() throws Exception{ Compalbe com = new Compalbe(); int result = com.div(2, 2); Thread.sleep(20); Assert.assertEquals(1,result); }
4.@Before,@After
public class TestCompalbe { Compalbe com = null; //@Before作用初始化测试方法相关资源 @Before public void init() { System.out.println("init"); com = new Compalbe(); } //@After作用销毁测试方法相关资源 @After public void destory() { System.out.println("destorys"); com = null; } @Test public void testAdd() { int result = com.add(2, 2); Assert.assertEquals(4, result); } @Test public void testDiv() throws Exception { int result = com.div(2, 2); Assert.assertEquals(1, result); } }
注init,destory分别会执行两次,有多少个测试方法就会分别执行多少次
5 @BeforeClass,@AfterClass
public class TestCompalbe { static Compalbe com = null; //@BeforeClass作用初始化测试方法相关资源(如:jdbc Connection) @BeforeClass public static void init() { System.out.println("init"); com = new Compalbe(); } //@AfterClass作用销毁测试方法相关资源 @AfterClass public static void destory() { System.out.println("destorys"); com = null; } @Test public void testAdd() { int result = com.add(2, 2); Assert.assertEquals(4, result); } @Test public void testDiv() throws Exception { int result = com.div(2, 2); Assert.assertEquals(1, result); } }注init,destory分别都只会执行一次,有多少个测试方法都只会分别执行一次
6 @Ignore
@Test //测试程序将忽略些方法 @Ignore public void testDiv() throws Exception { int result = com.div(2, 2); Assert.assertEquals(1, result); }
7@Suite (批量测试)
新增主程序
public class Compalbe2 { public int sub(int a,int b){ return a-b; } public int mul(int a,int b){ return a*b; } }
新增测试程序
public class TestCompable2 { Compalbe2 com = null; @Before public void init() { com = new Compalbe2(); } @After public void destory() { } @Test public void testMul() { int result = com.mul(3, 4); Assert.assertEquals(12, result); } @Test public void testSub() { int result = com.sub(3, 4); Assert.assertEquals(-1, result); } }
使用批量测试
@RunWith(Suite.class) @Suite.SuiteClasses({TestCompalbe.class,TestCompable2.class}) public class SuitTest { }
junit 将同时执行TestCompalbe,TestCompable2中的全部测试方法
同时SuitTest 还可以包括在其他的批量测试程序中
如@Suite.SuiteClasses({SuitTest1.class,SuitTest2.class})这样就可以方便去测试包,和JAR的测试程序.
@RunWith(Suite.class) 表示利用那种运行器,同时还可以自定义运行器超类(org.junit.runner.Runner)
8 私有方法测试
可以使用类的反射机制去加载Class,再获取方法.再去测试这个方法
9 组合查询
测试程序
//确认运行器 @RunWith(Parameterized.class) public class ParameterizedTest { private int result; private int input1; private int input2; private Compalbe com = null; @Before public void init(){ com = new Compalbe(); } //准备参数 //方法为 public static ,返回类型为Collection @Parameters public static Collection<Object[]> data() { //参数列表为二维数组,参数的位置为构造函数对应 //如{3,2,1},{3是结果对应result参数,2对应input1,1对应input2 Object[][] objarr = new Object[][]{{3,2,1},{4,2,2},{-1,-1,0}}; return Arrays.asList(objarr); } public ParameterizedTest(int result,int input1,int input2){ this.result = result; this.input1 = input1; this.input2 = input2; } //测试方法 @Test public void testAdd(){ Assert.assertEquals(result, com.add(input1, input2)); } }
以上程序将测试{3,2,1},{4,2,2},{-1,-1,0}三种情况
附件包括测试源代码
- junit.rar (6.4 KB)
- 下载次数: 126
发表评论
-
sql 解析 工具(sql parse)
2010-11-25 12:51 5962项目地址: http://jsqlparser.source ... -
asyn4j 1.2 发布
2010-10-08 19:16 18981.2更新 1.设置关闭服务延时 2.设置异步工作 ... -
asyn4j -- 异步方法调用框架
2010-08-24 19:41 3887asyn4j 是一个java异步方法调用框架,基于消费者与生产 ... -
代码备忘录
2010-08-06 10:47 1307List 迭代 private final List& ... -
java分布式学习笔记
2010-07-19 22:05 39031.分布式JAVA应用 基于TC ... -
写正则表达式--工具分享
2010-04-07 11:06 1240这是一个写和测正则表达式很好的工具,不知大家有没有用过! 里面 ... -
mina 实现与memcached 连接工具
2010-02-24 22:00 2109前段时间学习了mina框架.就确定写一个小实例玩一下. 看到不 ... -
JMF 通过 Applet 获取数据
2009-12-22 15:15 1676import java.awt.BorderLayou ... -
yanf4j 服务端读取操作 源码分析
2009-12-19 15:13 1436最近学习 NIO,学习了XMemcached 和 它的NIO框 ... -
Statement,PreparedStatement区别
2009-12-17 16:04 2265以Oracle为例吧 Statement ... -
java 排序 整合
2009-12-17 14:59 1241package net.rubyeye.xmemcached. ... -
JVM 结束挂钩程序
2009-12-16 15:08 1205public class HookTest { /** ... -
java优化编程--读书笔记
2009-12-09 14:58 18631.JVM管理两种类型的内存:堆内存(heap),栈内存(st ... -
Java的内存泄漏
2009-11-30 11:54 994Java的一个重要优点就是通过垃圾收集器(Garbage Co ... -
TCP/IP 无阻塞 Socket
2009-11-25 17:25 1962package com.io; import java. ... -
java socket 多线程处理
2009-11-25 16:16 2300public class MallShopSoketServe ... -
写ZIP文件
2009-11-24 09:42 998public class ZipTest { /** ... -
XML DOM API
2009-11-23 11:49 1513javax.xml.parse.DocumentBuilder ... -
自定义类加载器
2009-11-23 09:34 1135public class CryptoClassLoader ... -
ibatis 缓存 key 过长,大家有什么看法
2009-11-21 10:50 1069实体类 public class Account impl ...
相关推荐
在压缩包中包含的 `Junit4.0.jar` 文件是JUnit 4.0的库文件,它是开发环境中运行JUnit测试所必需的。将这个库添加到你的项目构建路径中,就可以开始编写和运行JUnit测试了。 使用JUnit进行单元测试通常涉及以下步骤...
总的来说,`junit4.0.jar`是Java开发中不可或缺的工具,它提供了一套强大且易用的测试框架,帮助开发者确保代码的质量和稳定性。无论是初学者还是经验丰富的开发者,都应该熟练掌握JUnit 4.0的使用,以便在项目开发...
Junit 4.0 是Java开发领域中一个重要的里程碑,它是JUnit系列的第四个主要版本,专注于提升测试的灵活性和可扩展性。JUnit是Java语言中最广泛使用的单元测试框架,它使得开发者能够编写易于理解、运行快速且可靠的...
这个压缩包"junit4.0.zip"包含了JUnit 4.0的所有组件和必要的库文件,使得开发者能够高效地编写和运行他们的测试用例,确保代码的质量和可靠性。 在Java开发中,单元测试是一种重要的实践,它允许程序员对代码的...
JUnit4.0是Java开发中广泛使用的单元测试框架,它为编写可重复执行的、可靠的测试提供了强大支持。本主题将深入探讨JUnit4的新特性,尤其是如何“放弃旧的断言,使用hamcrest断言”,以及如何有效地运行多个测试。 ...
junit-4.0.jar
《深入理解Hibernate 4.2.4与JUnit 4.0》 在Java开发领域,Hibernate作为一款强大的对象关系映射(ORM)框架,极大地简化了数据库操作,而JUnit则是进行单元测试的重要工具。本教程将围绕Hibernate 4.2.4版本与...
在给定的标题和描述中,我们关注的是如何使用Hibernate来连接PostgreSQL数据库,并且提到了一些关键的库文件,如hibernate-junit4.0、postgresql-8.4-jdbc等。 首先,让我们深入了解每个组件: 1. **Hibernate**:...
### Spring 4.0 学习笔记 #### 1. Spring 概述 ##### 1.1 Spring 是什么 Spring 是一个开源框架,其主要目标是简化企业级应用的开发。通过Spring,开发者可以利用简单的JavaBean来实现原本只有EJB才能完成的功能...
JUnit 4.0引入了许多改进,比如注解、参数化测试和测试套件等,使得测试代码更加简洁和易读。在Selenium项目中,你可以为每个功能或页面创建一个JUnit测试类,每个测试方法对应一个具体的测试场景。 在使用这些jar...
Junit学习笔记,希望有用~~~~~~~~~~~~~~~~~~~~~~
这篇博客“JUnit学习笔记”可能是博主GreatJone在深入学习JUnit过程中所做的记录和总结,包括了JUnit的基本概念、核心组件、使用方法以及一些高级特性。 首先,JUnit的核心理念是基于断言的测试,即编写特定的测试...
法在每个测试方法执行之后都要执行一次,相当于 JUnit3 中的 tearDown 方法,用于清理测试环境。@Test:这是 JUnit4 中的核心元数据,用于标记测试方法。当 JUnit4 运行测试时,会查找所有带有 @Test 注解的方法,并...
现在的版本都4.3.1,3.8.1的感觉好象不好找,虽然www.junit.org能够找到,但对我们这种英语不好的来说,还是不好找,再说了,现在好多的教程都是以3.8.1来写的,所以在这里把我找到的3.8.1传上来供大家以后下载 博文链接:...
### JUnit4学习笔记——入门篇 #### 一、配置MyEclipse在项目中引入JUnit4.jar包 在使用JUnit4进行单元测试之前,首先需要确保开发环境已正确配置JUnit库。对于使用MyEclipse IDE的开发者来说,可以通过以下步骤...
标题中的"Year_junit4_poetqqj_"可能是指一个关于使用JUnit 4.0进行年度测试的项目或教程,而"poetqqj"可能是个人名称、项目代号或者是某种编码规则的一部分,但在这里没有具体含义。描述中的“测试模块使用Junit ...
4. `junit-4.11-sources.jar`, `junit-4.7-src.jar`:这两个文件分别提供了 JUnit 4.11 和 4.7 版本的源代码,对于学习 JUnit 内部实现或者进行二次开发非常有帮助。 5. `使用说明.txt`:这是一个文本文件,很可能...
JUnit4视频教程及源码,由于文件较大,分割为JUnit4_01.zip,JUnit4_02.zip,JUnit4_03.zip三个压缩包并附文档,下载后解压便可观看视频,导入代码,直接在自己的机器上运行