1.2 JUnit4定义的标注

JUnit4的第一种用户是应用程序/业务类程序员。他们需要很方便地使用Junit进行单元测试。各种《JUnit 4 使用手册》、《在 Eclipse 中运行 JUnit 4 测试》、《Unit Testing with JUnit - Tutorial》文章和一些书籍是为他们(其实是我们)准备的。

按照单元测试类和业务类分离的原则,他们需要设计一个单元测试类。如HelloWorld的单元测试类,通常命名为HelloWorldTest。从验证JUnit4.10源代码的角度,我们可以直接编写XxxUnit单元测试类而省略业务类——除非必要。

所以,JUnit在最短包名org.junit中定义了应用程序/业务类程序员常用的各种标注和工具类Assert、Assume

org.junit.Test

org.junit.Ignore @Target({ElementType.METHOD,ElementType.TYPE})

@Before和@After标示的方法只能各有一个,取代了JUnit以前版本中的setUp和tearDown方法

org.junit.BeforeClass @Target(ElementType.METHOD)

org.junit.Before @Target(ElementType.METHOD)

org.junit.AfterClass @Target(ElementType.METHOD)

org.junit.After @Target(ElementType.METHOD)

org.junit.Rule

org.junit.ClassRule

较高级的使用或需要提供更多代码的测试,还包含了下列标注/annotation:

org.junit.runner.RunWith @Target(ElementType.TYPE),使用指定Runner运行测试。默认的Runner为org.junit.runners.JUnit4。

org.junit.runners.Suite.SuiteClasses @Target(ElementType.TYPE),将所有需要运行的测试类组成组/ Suite,一次性的运行以方便测试工作。

org.junit.runners.Parameterized.Parameters @Target(ElementType.METHOD),参数化测试

org.junit.experimental.theories.suppliers.TestedOn

org.junit.experimental.theories. DataPoint

org.junit.experimental.theories.DataPoints

org.junit.experimental.theories.ParametersSuppliedBy

org.junit.experimental.theories.Theory

org.junit.experimental.categories.Categories.ExcludeCategory

org.junit.experimental.categories.Categories.IncludeCategory

org.junit.experimental.categories.Category

参数化测试和成组测试

这些标注/annotation说修饰的单元测试类,就是JUnit将要处理的原材料。这些标注/annotation的含义以及代表的框架的设计需求,暂时不写。

时间: 2024-08-03 15:37:14

1.2 JUnit4定义的标注的相关文章

【JUnit4.10源代码分析】0导航

JUnit是由GOF 之一的Erich Gamma和 Kent Beck 编写的一个开源的单元测试框架,yqj2065分析JUnit源代码的主要目的是 学习其中对设计模式的运用. JUnit也是一个学习Java编程. 学习框架设计 和研究如何应对版本升级和接口变化的案例. NetBeans IDE 7.4 (Build 201310111528) 的测试库为JUnit4.10,因而在前面对JUnit4.8.2源代码分析的基础上,yqj2065将采用较正规的方式介绍JUnit4.10源代码. 10

位置与地图(二)地图的使用以及标注地图

继上一章,使用CoreLocation框架获取了当前设备的位置,这一章介绍地图的使用. 首先,导入<MapKit.framework>框架 #import <MapKit/MapKit.h> @main代码演示样例 main.h #import <UIKit/UIKit.h> #import <MapKit/MapKit.h> // 引用地图协议 @interface HMTMainViewController : UIViewController<M

JUnit4.8.2来源分析-2 org.junit.runner.Request

JUnit4.8.2源代码,最为yqj2065兴趣是org.junit.runner.Request,现在是几点意味着它? ①封装JUnit的输入 JUnit4作为信息处理单元,它的输入是单元測试类--布满各种JUnit4的RUNTIME标注的类,但因为使用反射机制,JUnit4的输入严格地说是一个或多个(组)单元測试类的Class对象.早期版本号的JUnit主要处理一个測试或測试构成的树,在增添了对过滤/ filtering和排序/ sorting支持后,JUnit4增加了这个概念.毕竟依照1

JUnit4.8.2源代码分析-2 org.junit.runner.Request和Description

JUnit4.8.2源代码中,最令yqj2065感兴趣的是org.junit.runner.Request,它是几个意思呢? ①封装JUnit的输入 JUnit4作为信息处理单元,它的输入是单元测试类--布满各种JUnit4的RUNTIME标注的类,但由于使用反射机制,JUnit4的输入严格地说是一个或多个(组)单元测试类的Class对象.早期版本的JUnit主要处理一个测试或测试构成的树,在增添了对过滤/ filtering和排序/ sorting支持后,JUnit4加入了这个概念.毕竟按照1

【百度地图API】建立全国银行位置查询系统(四)——如何利用百度地图的数据生成自己的标注

原文:[百度地图API]建立全国银行位置查询系统(四)--如何利用百度地图的数据生成自己的标注 摘要: 上一章留个悬念,"如果自己没有地理坐标的数据库,应该怎样制作银行的分布地图呢?" 答案就是,利用百度地图上的数据. ---------------------------------------------------------------------------------------------- 我们不用花大把时间写代码去跑数据,只需要利用百度地图API提供的免费接口,就可以

1.2.4 Java Annotation 提要

(本文是介绍依赖注入容器Spring和分析JUnit源码的准备知识) Java Annotation(标注) java.lang.annotation.Annotation是全部Java标注的父接口.它除了override/改写Object的equals(Object).hashCode()和toString()外,仅有一个方法 Class<? extends Annotation> annotationType() 返回本标注的的类型. JDK中定义的标注java.lang.Override

Spring 注解详解03

@Controller @Service @Autowired @RequestMapping @RequestParam @ModelAttribute @Cacheable @CacheFlush @resource @PostConstruct @PreDestroy @repository @component (不推荐使用) @scope @SessionAttributes @InitBinder @Required @qualifier // @Controller 例如 @Con

编写Spring MVC Controller

1.映射请求 在POJO类定义处标注@Controller,再通过<content:component-scan /...>扫描相应的类包,即可使POJO类成为一个能处理HTTP请求的控制器. 如何将请求映射到对应的控制器的方法中是Spring MVC框架最重要的任务之一,这项任务由@RequestMapping注释承担. 例子1: 1 @Controller 2 public class UserController{ 3 4 @RequestMapping(value="/use

ansys 常见命令集合

APDL换行与续行- APDL规定每行72个字符 如果要写表达式A=C1+C2 (C1与C2都为表达式 可以用 B=C1 A=B+C2 将一行拆成两行来做但是如果不是表达式,而是输入一个命令参数过多的话,可以用续行命令RMORE,格式如下: RMORE, R7, R8, R9, R10, R11, R12 这个命令每次也只能输入6个参数,如果多于6个,可以重复使用RMORE就可以输入13-18,19-24等等.另外,于上面续行相应的是换行,一行命令太短可以使用多个命令共一行 $",没有双引号.这