在Junit4中还有的测试注解有:  @BeforeClass ,@Before,@Test,@After,@AfterClass

1、其中:@BeforeClass,@AfterClass是Junit4中新添加进去的

2、如果Run as --->Junit Test,运行含有@Test注释的方法是,那么所有注解方法都将被执行,所含的执行顺序是:

@BeforeClass ,@Before,@Test,@After,@AfterClass

3、在JUnit4中,如果测试类继承了TestCase类,那么所有的Annotation都不会起作用。

4、案例:

package cn.edu.hactcm.testjunit;

import java.util.UUID;

import org.junit.After;

import org.junit.AfterClass;

import org.junit.Before;

import org.junit.BeforeClass;

import org.junit.Test;

/**

* author    : toto 11111111@qq.com

* CFMS    :Computer files management system

* version  :1.0 2013-2-19 下午01:26:04

*

* 此类用于测试单元测试中的几个方法

*/

public class TestJunit {

private String flag;

/**

* 在本类加载前执行,注意的是有关键字:static

*/

@BeforeClass

public static void testBeforeClass() {

System.out.println("public static void testBeforeClass()");

}

/**

* 在执行目标测试方法testTest()前执行

*/

@Before

public void testBefore() {

System.out.println("-------------------------------------");

System.out.println("public void testBefore()");

flag = UUID.randomUUID().toString();

System.out.println("-------------------------------------");

}

/**

* 目标测试方法testTest()

*/

@Test

public void testTest() {

System.out.println("public void testTest()");

System.out.println(flag);

flag = null;

}

/**

* 目标测试方法testTest2()

*/

@Test

public void testTest2() {

System.out.println("public void testTest2()");

System.out.println(flag);

flag = null;

}

/**

* 在执行目标测试方法testTest()执行

*/

@After

public void testAfter() {

System.out.println("-------------------------------------");

System.out.println("public void testAfter()");

System.out.println(flag);

System.out.println("-------------------------------------");

}

/**

* 在本类加载后执行,注意的是有关键字:static

*/

@AfterClass

public static void testAfterClass() {

System.out.println("public static void testAfterClass()");

}www.2cto.com

}

只执行testTest()方法后的结果为:

public static void testBeforeClass()

-------------------------------------

public void testBefore()

-------------------------------------

public void testTest()

993ea4ea-3626-4caa-9976-07203a8b7475

-------------------------------------

public void testAfter()

null

-------------------------------------

public static void testAfterClass()

转载于:https://www.cnblogs.com/taz372436/p/5741868.html

Java中单元测试中:@BeforeClass,@Before,@Test,@After,@AfterClass中的问题详解相关推荐

  1. java构造块_java中的静态代码块、构造代码块、构造方法详解

    运行下面这段代码,观察其结果: package com.test; public class HelloB extends HelloA { public HelloB() { } { System. ...

  2. Java中常见RuntimeException与其他异常表及Exception逻辑关系详解

    Java中常见RuntimeException与其他异常表及Exception逻辑关系详解 前言 常见`RuntimeException` 其他错误类型 `Error`类 `Exception`类 E ...

  3. java ant解压缩_java ant包中的org.apache.tools.zip实现压缩和解压缩实例详解

    java ant包中的org.apache.tools.zip实现压缩和解压缩实例详解 发布于 2020-4-7| 复制链接 摘记: java ant包中的org.apache.tools.zip实现 ...

  4. java中isblank 方法_StringUtils中的isEmpty、isNotEmpty、isBlank和isNotBlank的区别详解

    一.StringUtils中的isEmpty方法 1.StringUtils中的isEmpty方法中的源码如下: 注:由源码可知(判断某字符串是否为空,为空的标准是str==null或str.leng ...

  5. (转)web.xml 中的listener、 filter、servlet 加载顺序及其详解

    转: https://www.cnblogs.com/Jeely/p/10762152.html web.xml 中的listener. filter.servlet 加载顺序及其详解 一.概述 1. ...

  6. JS/JavaScript中解析JSON --- JSON.parse()、JSON.stringify()以及$.parseJSON()使用详解

    JS/JavaScript中解析JSON --- JSON.parse().JSON.stringify()以及$.parseJSON()使用详解 现在JSON格式在web开发中非常重要,特别是在使用 ...

  7. php self this static,PHP 中 self、static、$this 的区别和后期静态绑定详解

    本篇文章给大家分享的内容是关于PHP 中 self.static.$this 的区别和后期静态绑定详解,有着一定的参考价值,有需要的朋友可以参考一下 self.static 和 $this 的区别 为 ...

  8. nmmqq.php?/lspc.html,html中的图片直接使用base64编码后的字符串代替详解

    网页中的图片是使用base64编码后的字符串代替了,这个叫做Data URI scheme,下面有个不错的示例,大家可以参考下 最近来了一个网页,里面有图片,但是却没有引用外部的图片资源,很好奇.查看 ...

  9. python使用视频_Python中操作各种多媒体,视频、音频到图片的代码详解

    我们经常会遇到一些对于多媒体文件修改的操作,像是对视频文件的操作:视频剪辑.字幕编辑.分离音频.视频音频混流等.又比如对音频文件的操作:音频剪辑,音频格式转换.再比如我们最常用的图片文件,格式转换.各 ...

  10. 多目标跟踪(MOT)中的卡尔曼滤波(Kalman filter)和匈牙利(Hungarian)算法详解

    多目标跟踪(MOT)中的卡尔曼滤波(Kalman filter)和匈牙利(Hungarian)算法详解 1. 概览 在开始具体讨论卡尔曼滤波和匈牙利算法之前,首先我们来看一下基于检测的目标跟踪算法的大 ...

最新文章

  1. 数据标准化(归一化)
  2. C语言经典例84-一个偶数总能表示为两个素数之和
  3. Windows进程与线程学习笔记(五)—— 模拟线程切换
  4. mysql not in语句_MySQL命令
  5. ngrok编译和安装
  6. boost::replace相关的测试程序
  7. 温故之 “插入排序”
  8. 新鲜出炉!大规模神经网络最新综述!
  9. android nfc ndef mifareclassic,Android NFC开发-实践篇
  10. python创建目录保存文件
  11. Dubbo Metrics 发布新版本 2.0.1 | Dubbo 的度量统计基础设施
  12. 查看linux系统软件各种版本环境
  13. [软件] 装机员 Ghost Win7 Sp1 32位纯净10月版
  14. Servlet四种访问属性--知识点
  15. 【空间分析】4 探索性分析
  16. background-size失效
  17. python下载付费音乐包_python无损音乐下载器下载
  18. JSP中使用JSP模板
  19. 简单快速获取思维导图
  20. 计算机英语解读,解释计算机Windows的学习英语

热门文章

  1. Win10 + ubuntu16双系统安装以及cuda,cudnn安装
  2. mlc tlc slc qlc_看了这么多固态硬盘科普,终于真正搞明白TLC闪存和SLC缓存
  3. svm rbf人脸识别 yale_实操课——机器学习之人脸识别
  4. python 开发板-MicroPython:STM32 上 的 Python 开发
  5. 角色转移服务器维护怎么回事,服务器互通及游戏角色转移说明
  6. 计算机网络实验可变长子网掩码,计算机网络实验3-子网掩码与划分子网实验报告.docx...
  7. oracle存储换硬盘,Oracle 10g RAC 数据存储更换
  8. 数组扩容 java_java 实现数组扩容与缩容案例
  9. java thread 无法执行_哪位大神帮我讲一下这段代码,为什么线程不能继续执行
  10. GitHub开源的AI下五子棋(基于博弈树极大极小值alpha-beta剪枝搜索)