junit4学习笔记
来源:互联网 发布:最早的陶器知乎 编辑:程序博客网 时间:2024/05/21 15:42
Junit简介:
Junit最初是由Erich Gamma 和 Kent Beck 编写的一个回归测试框架(regression testing framework),为单元测试(Unit Test)的支持框架。用来编写和执行重覆性的测试。即所谓白盒测试。
它包括了以下的特性:
1 对预期结果作断言
2 提供测试装备的生成与销毁
3 易于组织执行测试
4 图形与文字界面的测试器
Junit的环境配置
环境:Eclipse 中配置junit,选择项目Junit4(在Package Explorer中) -> 右击鼠标 -> 选择properties -> 选择Java Build Path (在左边的菜单中) -> 在右边选择标签 Libraries -> 单击按钮“Add Library” -> 选择JUnit , 单击按钮 “Next>” -> 选择JUnit library version 为: JUnit4 -> 单击按钮“Finish” –> 单击按钮 “OK”Junit4是Junit框架有史以来的最大改进,其主要目标是利用java5的Annotation特性来简化测试用例的编写。Junit4的官方网址是http://www.junit.org/。
总结一下3-4的不同,及4的改进
下面我们以一个简单的例子来介绍如何使用 Junit4同Junit3编写测试用例:public Class XXXX{
public String hello(){
return “hello”;
}
}
对于这个类的用junit3编写测试用例:
import junit.framework.TestCase;
public Class XXXXTest extends TestCase{
public void testHello(){
asssertEqual(new XXXX().hello(),”hello”);
}
}
用junit4编写测试用例:
import static org.junit.framework.assertEqual;
import org.junit.Test;
//这两个是junit4中必须导入的s
public Class XXXXTest{
@Test
public void helloTest(){
asssertEqual(new XXXX().hello(),”hello”);
}
}
从上面例子我们对Junit3和Junit4有了一个初步的印象,下面我们重点介绍Junit4和Junit3的主要区别:
(1)、JUnit3必须引入类TestCase,即import junit.framework.TestCase;而Junit4中则是import org.junit.Test;和import static org.junit.Assert.*;;
(2)、JUnit3必须继承类TestCase;JUnit4则不需要class BaseClassTest extends TestCase;
(3)、Junit3的测试方法的命名必须以test开头;而JUnit4则不需要使用public void testMethod()的格式,但是类开始的时候要标记@Test;
JUnit3和JUnit4通过assert*方法来判断结果:assertTrue(baseClass.method().equals(test.junit.BaseClass));;
3.1 Junit4引入了java5.0的注释技术:
这两个版本最大的区别在于JUnit3.x中测试必须继承TestCase,并且每个方法名必须以test开头,比如testMethod1();而在JUnit4.x中不必继承TestCase,采用了注解的方式,只要在测试的方法上加上注解@Test即可,从而不必再遵循以前的一些显式约定和反射定位测试;在JUnit4.x中如果继承了TestCase,注解就不起作用了,从而有很重要的
来源:http://blog.csdn.net/afeilxc/article/details/6218908
- Junit4学习笔记二
- junit4学习笔记
- JUnit4学习笔记
- Junit4 学习笔记
- JUnit4入门学习笔记
- junit4学习笔记
- junit4学习笔记
- junit4学习笔记
- Junit4源码学习笔记
- junit4学习笔记
- junit4学习笔记
- junit4学习笔记
- junit4学习笔记
- Junit4学习笔记
- Junit4学习笔记
- junit4学习笔记
- JUnit4学习笔记
- Junit4学习笔记
- 【翻译自mos文章】在RAC database中怎么独立于instance来kill session?
- 8 ① AddGesture 保存自定义增加的手势
- [Objective-C]关联(objc_setAssociatedObject、objc_getAssociatedObject、objc_removeAssociatedObjects)
- 解决Failed to instantiate the default view controller for UIMainStoryboardFile 'Main'
- C语言中sizeof的用法
- junit4学习笔记
- OC-局部变量和全局变量、结构体、预处理指令以及关键字的基本使用
- 深入理解JAVA的多态性
- 自己看的和整理的一些经典技术博客列表BLOG
- C++学习笔记
- JS拖动效果实现
- URAL 1068. Sum (小学数学题)
- android的Bitmap和Drawable用法
- This Android SDK requires Andriod Developer Toolkit version 20.0.0 or above