JUnit 4 中的Before After Ignore
Test BeforeClass AfterClass
@BeforeClass:针对所有测试,只执行一次,且必须为static
void
@Before:初始化方法
@Test:测试方法,在这里可以测试期望异常和超时时间
@Ignore:忽略的测试方法
@After:释放资源
@AfterClass:针对所有测试,只执行一次,且必须为static
void
一个JUnit 4 的单元测试用例执行顺序为:
@BeforeClass
–> @Before –> @Test –> @After –> @AfterClass
每一个测试方法的调用顺序为:
@Before –>
@Test –> @After
写个例子测试一下,测试一下
package junit4;
import org.junit.*;
import static org.junit.Assert.*;
public class JUnit4Test {
@Before
public void before() {
System.out.println("@Before");
}
@Test
public void test() {
System.out.println("@Test");
assertEquals(5 + 5, 10);
}
@Ignore
@Test
public void testIgnore() {
System.out.println("@Ignore");
}
@Test(timeout = 50)
public void testTimeout() {
System.out.println("@Test(timeout = 50)");
assertEquals(5 + 5, 10);
}
@Test(expected = ArithmeticException.class)
public void testExpected() {
System.out.println("@Test(expected = Exception.class)");
throw new ArithmeticException();
}
@After
public void after() {
System.out.println("@After");
}
@BeforeClass
public static void beforeClass() {
System.out.println("@BeforeClass");
}
@AfterClass
public static void afterClass() {
System.out.println("@AfterClass");
}
}
输出结果
>@BeforeClass
@Before
@Test
@After
Test 'net.im47.demo.junit.JUnit4Test.testIgnore' ignored
@Before
@Test(50)
@After
@Before
@Test(Exception.class)
@After
@AfterClass
对比:
@BeforeClass 和
@AfterClass 对于那些比较“昂贵”的资源的分配或者释放来说是很有效的,因为他们只会在类中被执行一次。相比之下对于那些需要在每次运行之前都要初始化或者在运行之后都需要被清理的资源来说使用@Before和@After同样是一个比较明智的选择。
@BeforeClass and @AfterClass
|
@Before and @After
|
在一个类中只可以出现一次
|
在一个类中可以出现多次,即可以在多个方法的声明前加上这两个Annotaion标签,执行顺序不确定
|
方法名不做限制
|
方法名不做限制
|
在类中只运行一次
|
在每个测试方法之前或者之后都会运行一次
|
@BeforeClass父类中标识了该Annotation的方法将会先于当前类中标识了该Annotation的方法执行。 @AfterClass 父类中标识了该Annotation的方法将会在当前类中标识了该Annotation的方法之后执行
|
@Before父类中标识了该Annotation的方法将会先于当前类中标识了该Annotation的方法执行。
@After父类中标识了该Annotation的方法将会在当前类中标识了该Annotation的方法之后执行
|
必须声明为public
static
|
必须声明为public
并且非static
|
所有标识为@AfterClass的方法都一定会被执行,即使在标识为@BeforeClass的方法抛出异常的的情况下也一样会。
|
所有标识为@After
的方法都一定会被执行,即使在标识为 @Before 或者 @Test 的方法抛出异常的的情况下也一样会。
|
分享到:
相关推荐
JUnit4是Java编程语言中最广泛使用的单元测试框架之一,它为开发者提供了一种方便、高效的方式来验证代码的正确性。这个“junit4 jar包 Java单元测试框架绿色免费版.zip”文件包含的是JUnit4框架的可执行jar包,用于...
JUnit4 是 JUnit 框架有史以来的最大改进,其主要目标便是利用 Java5 的 Annotation 特性简化测试用例的编写。下面是对 JUnit4 的详细介绍: 一、Annotation 简介 Annotation 是 Java5 中引入的一种元数据特性,...
Java Annotation注解技术是自Java SE 5.0版本引入的一种元编程机制,它允许程序员在源代码的各个层面(如类、方法、变量等)添加元数据,以供编译器、JVM或第三方工具在编译时或运行时进行处理。Annotation简化了...
jUnit4 是 JUnit 框架有史以来的最大改进,其主要目标便是利用 Java5 的 Annotation 特性简化测试用例的编写。 Annotation 是一种元数据,描述数据的数据。在 Java 里面可以用来和 public、static 等关键字一样来...
JUnit4 是 JUnit 测试框架的一个重大更新版本,它充分利用了 Java 5 的注解(Annotation)特性来简化测试用例的编写过程。注解是一种元数据,用于描述程序中的元素如类、方法或变量的作用。与传统的关键字(如 ...
Junit4通过注解(Annotation)来简化测试用例的编写,例如`@Test`注解标记测试方法,`@Before`和`@After`注解分别表示在每个测试方法执行前后的准备工作和清理工作。Calculate类包含四个方法:add、subtract、...
2. JUnit 4的特点:JUnit 4使用Java 5中的注解(annotation)使测试变得更加简单,Martin Fowler评价JUnit:在软件开发领域,从来就没有如此少的代码起到了如此重要的作用。 3. JUnit 4的安装和配置:需要Eclipse、...
下面我们将详细介绍Junit4的使用和在Eclipse中如何高效方便的进行对代码进行测试。 Junit4概述 JUnit4是JUnit框架有史以来的最大改进,其主要目标便是利用Java5的Annotation特性简化测试用例的编写。Annotation是...
例如,文件可能会讲解如何设置一个基本的JUnit测试类,通常这个类会继承自`junit.framework.TestCase`(对于较旧的JUnit版本)或者使用注解`@RunWith(JUnit4.class)`(对于JUnit 4及以上版本)。 测试类中的每个...
JUnit4是JUnit框架的一个重大改进,特别是在Java5引入注解功能之后。注解(Annotation)在Java中是一种元数据,用于提供额外的信息来描述类、方法或变量的用途,类似于公共(public)、静态(static)等关键字。 在...
JUnit4是Java编程语言中最广泛使用的单元测试框架之一,它为开发者提供了一种方便、高效的方式来验证代码的正确性。这个“junit4 jar完整包”包含了所有你需要进行单元测试的类和接口,使得测试过程变得简单且易于...
JUnit4 是一个广泛使用的Java编程语言的单元测试框架,它极大地简化了测试代码的编写,使得开发者能够更容易地创建和运行测试用例。这个“最新junit4,完整压缩文件,支持注解”包含了所有你需要的JUnit4库,让你能够...
Java的注解(Annotation)是元数据的一种形式,它提供了在代码中嵌入信息的方式,这些信息可以被编译器或运行时环境用来执行各种任务,如代码分析、验证、生成代码、部署等。注解在Java编程中扮演着重要的角色,尤其...
Java自定义注解是Java平台提供的一种元编程机制,它允许程序员在源代码中的任何元素(类、方法、变量等)上添加元数据。自定义注解可以被编译器或者运行时系统用来执行特定的任务,例如代码分析、性能监控、持久化...
《Junit4:Java开发中的单元测试利器》 在Java编程世界中,单元测试是确保代码质量、可维护性和稳定性的重要工具。而Junit4,作为最广泛使用的Java单元测试框架,为开发者提供了强大且易用的测试能力。本文将深入...
Java注解(Annotation)是Java语言中的一个重要特性,它允许我们在源代码中嵌入元数据。元数据是关于数据的数据,它可以提供额外的信息,但不直接影响程序的执行。注解的作用在于为编译器、解释器或其他工具提供信息,...
- 在JUnit4中,核心的改变是引入了Java5的Annotation特性。Annotation是一种元数据,它可以提供关于代码额外的信息,而这些信息可以在编译时或运行时被解析和处理。例如,在JUnit4中,`@Test`注解用于标记测试方法...
JUnit 4测试框架是Java开发中的一个重要工具,用于编写和执行单元测试。单元测试是对软件中的最小可测试单元进行检查,通常是一个函数或方法。它的重要性在于能够确保代码的正确性和稳定性,特别是在软件开发的早期...
JUnit4是JUnit框架有史以来最大的改进,其主要目标是利用Java5的Annotation特性简化测试用例的编写。Annotation是一种元数据,用于描述数据。在Java中可以用来和public、static等关键字一样来修饰类名、方法名、变量...