JUnit(>4.0)@BeforeClass、@Before、@Test、@After、@AfterClass、@Ignore

JUnit 4 开始使用 Java 5 中的注解(annotation),常用的几个 annotation 介绍:

@BeforeClass:针对所有测试,只执行一次,且必须为static void

@Before:初始化方法

@Test:测试方法,在这里可以测试期望异常和超时时间

@After:释放资源

@AfterClass:针对所有测试,只执行一次,且必须为static void

@Ignore:忽略的测试方法

一个单元测试用例执行顺序为:

@BeforeClass –> @Before –> @Test –> @After –> @AfterClass

每一个测试方法的调用顺序为:

@Before –> @Test –> @After

以下是测试执行顺序代码:

[java] view plaincopy

  1. public class CalculatorTest {
  2. private static Calculator calculator = new Calculator();
  3. @BeforeClass
  4. public static void beforeClass1(){
  5. System.out.println("@beforeClass1");
  6. }
  7. @BeforeClass
  8. public static void beforeClass2(){
  9. System.out.println("@beforeClass2");
  10. }
  11. @Before
  12. public void before1() throws Exception {
  13. System.out.println("@before1");
  14. }
  15. @Before
  16. public void before2() throws Exception {
  17. System.out.println("@before2");
  18. }
  19. @Test
  20. public void testAdd() {
  21. System.out.println(1);
  22. }
  23. @Test
  24. public void testSubstract() {
  25. System.out.println(2);
  26. }
  27. @Ignore("Multiply() Not yet implemented")
  28. @Test
  29. public void testMultiply() {
  30. System.out.println(3);
  31. fail("Not yet implemented");
  32. }
  33. @Test
  34. public void testDivide() {
  35. System.out.println(4);
  36. }
  37. @Test(timeout = 1000)
  38. public void testSquareRoot() {
  39. System.out.println(5);
  40. }
  41. @Test
  42. //@Test(expected = ArithmeticException.class)
  43. public void divideByZero() {
  44. System.out.println(6);
  45. }
  46. @After
  47. public void after1(){
  48. System.out.println("@after1");
  49. }
  50. @After
  51. public void after2(){
  52. System.out.println("@after2");
  53. }
  54. @AfterClass
  55. public static void afterClass1(){
  56. System.out.println("@afterClass1");
  57. }
  58. @AfterClass
  59. public static void afterClass2(){
  60. System.out.println("@afterClass2");
  61. }
  62. }

执行结果: @beforeClass2
@beforeClass1
@before2
@before1
1
@after1
@after2
@before2
@before1
2
@after1
@after2
@before2
@before1
4
@after1
@after2
@before2
@before1
5
@after1
@after2
@before2
@before1
6
@after1
@after2
@afterClass1
@afterClass2

时间: 2024-10-20 13:49:39

JUnit(>4.0)@BeforeClass、@Before、@Test、@After、@AfterClass、@Ignore的相关文章

注解方式配置Servlet(Servlet3.0)

注解方式配置Servlet(Servlet3.0) Servlet3.0 主页http://download.oracle.com/otndocs/jcp/servlet-3.0-fr-eval-oth-JSpec/ 1.简单的servlet配置 @WebServlet(”/myservlet”) @WebServlet(name=”MyServlet”, urlPatterns={"/myservlet", "/bar"}) xxx/myservlet就可用执行该

离线网页制作器(beta1.0)

1 package hhuarongdao; 2 /* 3 *使用方法: 先选择保存路径,然后输入相应的网址, 4 *然后会得到那个网页的离线版的 内容 5 * */ 6 import java.awt.BorderLayout; 7 import java.awt.Container; 8 import java.awt.FlowLayout; 9 import java.awt.Font; 10 import java.awt.event.ActionEvent; 11 import jav

IIS部署ASP.NET MVC (4.0)网站出现的错误

(1)无法读取配置节“system.web.extensions”,因为它缺少节声明 在IIS中,在基本设置中,将程序池选择为ASP.NET 4.0即OK! (2)由于 Web 服务器上的“ISAPI 和 CGI 限制”列表设置,无法提供您请求的页面 第一步,检查: 出现环境:win7 + IIS7.0 解决办法:IIS的根节点->右侧“ISAPI和CGI限制”->把禁止的DotNet版本项设置为允许,即可~ 第二步:检查4.0的aspnet_isapi.dll文件是否已添加,如果没有点击右键

Rational Rose2007(v7.0)下载地址、安装及激活详解教程(图)

最近需要画uml图,之前用的是Rose 2003版的,由于好久没进去了,结果发现原来的激活又失效了,omg又要激活一次?2003的激活真的很烦..于是就去百度找新版的,由于很多链接都存在挂羊头卖狗肉的现象,以至于找了好久才找到资源.所以想出来分享一下.. 废话说得有点多了,进入正题,以下提供下载地址: Rational Rose 2007(v 7.0)(含激活文件):http://pan.baidu.com/share/link?shareid=467021&uk=421719222 激活文件l

Rational Rose2007(v7.0)下载地址、安装及激活详解教程

http://blog.csdn.net/skl_tz/article/details/8925152 最近需要画uml图,之前用的是Rose 2003版的,由于好久没进去了,结果发现原来的激活又失效了,omg又要激活一次?2003的激活真的很烦..于是就去百度找新版的,由于很多链接都存在挂羊头卖狗肉的现象,以至于找了好久才找到资源.所以想出来分享一下.. 废话说得有点多了,进入正题,以下提供下载地址: Rational Rose 2007(v 7.0)(含激活文件):http://pan.ba

无障碍网页设计(WCAG2.0)

无障碍化是指无论健全人还是残疾人,年轻人还是老年人都可以平等地获取互联网上的信息和服务.无障碍化网站建设不单可以增加网站的受益群体,更是一个有情怀.有担当的互联网企业的责任,也是一个互联网从业人员应该关注到的一个方面. 无障碍化受益人群: 普通人 普通网站用户:文化背景和习惯与主流用户不同的用户:老年人或儿童等用户:无障碍化可使得用户更轻松地使用网站服务,降低使用.学习和理解的成本. 视力障碍用户 主要包括盲人.低视力.色盲.色弱等用户.针对这部分用户所做的信息无障碍化是最通用和最具有代表性的,

RHCSA(7.0)考试解析

1.破密码: rhgb quiet改为rd.break-----ctrl+x------mount -o remount,rw /sysroot/-------chroot /sysroot-----passwd------touch /.autorelabel---exit---exit 2.配置IP地址: 使用图形化,配置IP地址.子网掩码.网关.DNS,一定记得勾上"认证中的自动连接".配置好后ifconfig查看IP信息,cat /etc/resolv.conf查看DNS信息.

用润乾集算报表实现实时报表(T+0)的方案

在报表项目中,客户越来越关注源数据的实时性,希望看到最新发生的数据在报表中体现出来.但是,传统的报表工具+数据仓库+ETL方式很难做到这一点,往往是只能看到昨天.上周甚至是上个月的情况,也就是T+1.T+7.T+30统称T+n报表.很难实现T+0报表,也就是能体现实时信息的报表. 分析其原因在于:1.如果报表的历史数据和最新数据都从客户的生产系统读取,虽然可以实现T+0报表,但是会对生产数据库造成压力,影响客户的业务.2.如果采用数据仓库的方式,那么ETL从生产库中取出数据,需要较长的"窗口时间

针对敲诈病毒(WanaCrypt0r2.0)的应对方案

病毒背景 5月12日起,Onion.WNCRY两类敲诈者病毒变种在全国乃至全世界大范围内出现爆发态势,中国大陆大量教育网用户和企业用户中招. 与以往不同的是,这次的新变种病毒添加了NSA(美国国家安全局)黑客工具包中的"永恒之蓝"0day漏洞利用,通过445端口(文件共享)在内网进行蠕虫式感染传播. 微软在今年3月10日已发布补丁MS17-010修复了"永恒之蓝"攻击的系统漏洞,请尽快安装此安全补丁,网址为https://technet.microsoft.com/