@Ignore 用法很简单, 如果你的测试用例还没有准备好而不想被执行, 又不想删掉或注释掉, 可以使用 @Ignore 标注来忽略测试。

  • 方法一旦用 @Ignore 注解了将不会被执行.

  • 如果一个类用 @Ignore 注解了 他下面的所有测试方法将不会被执行.

看个应用

Create a Class

  • Create a java class to be tested say MessageUtil.java in C:\ > JUNIT_WORKSPACE

/*
* This class prints the given message on console.
*/
public class MessageUtil { private String message; //Constructor //@param message to be printed public MessageUtil(String message){ this.message = message; } // prints the message public String printMessage(){ System.out.println(message); return message; } // add "Hi!" to the message public String salutationMessage(){ message = "Hi!" + message; System.out.println(message); return message; } }

Create Test Case Class

  • Create a java test class say TestJunit.java.

  • Add a test methods testPrintMessage(),testSalutationMessage() to your test class.

  • Add an Annotaion @Ignore to method testPrintMessage().

Create a java class file name TestJunit.java in C:\ > JUNIT_WORKSPACE

import org.junit.Test; import org.junit.Ignore; import static org.junit.Assert.assertEquals; public class TestJunit { String message = "Robert"; MessageUtil messageUtil = new MessageUtil(message); @Ignore @Test public void testPrintMessage() { System.out.println("Inside testPrintMessage()"); message = "Robert"; assertEquals(message,messageUtil.printMessage()); } @Test public void testSalutationMessage() { System.out.println("Inside testSalutationMessage()"); message = "Hi!" + "Robert"; assertEquals(message,messageUtil.salutationMessage()); } }

Create Test Runner Class

Create a java class file name TestRunner.java in C:\ > JUNIT_WORKSPACE to execute Test case(s)

import org.junit.runner.JUnitCore; import org.junit.runner.Result; import org.junit.runner.notification.Failure; public class TestRunner { public static void main(String[] args) { Result result = JUnitCore.runClasses(TestJunit.class); for (Failure failure : result.getFailures()) { System.out.println(failure.toString()); } System.out.println(result.wasSuccessful()); } }

Compile the MessageUtil, Test case and Test Runner classes using javac

C:\JUNIT_WORKSPACE>javac MessageUtil.java TestJunit.java TestRunner.java

Now run the Test Runner which will not run testPrintMessage() test case defined in provided Test Case class.

C:\JUNIT_WORKSPACE>java TestRunner

Verify the output. testPrintMessage() test case is not tested.

Inside testSalutationMessage()
Hi!Robert true

Now update TestJunit in C:\ > JUNIT_WORKSPACE to ignore all test cases. Add @Ignore at class level

import org.junit.Test; import org.junit.Ignore; import static org.junit.Assert.assertEquals; @Ignore public class TestJunit { String message = "Robert"; MessageUtil messageUtil = new MessageUtil(message); @Test public void testPrintMessage() { System.out.println("Inside testPrintMessage()"); message = "Robert"; assertEquals(message,messageUtil.printMessage()); } @Test public void testSalutationMessage() { System.out.println("Inside testSalutationMessage()"); message = "Hi!" + "Robert"; assertEquals(message,messageUtil.salutationMessage()); } }

Compile the Test case using javac

C:\JUNIT_WORKSPACE>javac TestJunit.java

Keep your Test Runner unchnaged as follows

import org.junit.runner.JUnitCore; import org.junit.runner.Result; import org.junit.runner.notification.Failure; public class TestRunner { public static void main(String[] args) { Result result = JUnitCore.runClasses(TestJunit.class); for (Failure failure : result.getFailures()) { System.out.println(failure.toString()); } System.out.println(result.wasSuccessful()); } }

Now run the Test Runner which will not run any test case defined in provided Test Case class.

C:\JUNIT_WORKSPACE>java TestRunner

Verify the output. No test case is tested.

true

转载于:https://www.cnblogs.com/fayzter/p/4562839.html

@Ignore_JUnit - Ignore Test相关推荐

  1. Eclipse中SVN设置文件为ignore后重新添加至版本控制

    先前把需要版本控制的文件夹ignore了,用了很长时间找解决方法,结果发现竟如此简单,对eclipse的功能不熟悉啊. 方法如下: 在Window->Show View -> Naviga ...

  2. svn中的ignore

    首先,svn GUI菜单右键的ignore功能,写的模模糊糊,网上也没啥人给出清晰的解释,stackoverflow推荐用命令行控制 SVN有3中方法配置ignore 1.配置文件 C:\Users\ ...

  3. insert into与insert ignore以及replace into的区别

    insert ignore表示,如果表中已经存在相同的记录,则忽略当前新数据: INSERT INTO有无数据都插入,如果主键则不插入; REPLACE INTO 如果是主键插入则会替换以前的数据; ...

  4. MariaDB/MySQL防止重复插入相同记录:INSERT IGNORE或者REPLACE

    MySQL防止重复插入相同记录有2种常用的方法. 1 使用 INSERT IGNORE 使用 INSERT IGNORE 可以在插入具有相同主键的数据时不做重复插入. mysql> SELECT ...

  5. eclipse svn提交忽略文件及文件夹,ignore设置无效..

    如果之前提交过此文件,就不能设置忽略该文件了.所以第一次提交的时候要搞清楚再提交. [亲测,的确如此,用 Windows -> Preferences -> Team -> Igno ...

  6. warnings.filterwarnings(ignore)

    参考 https://blog.csdn.net/tefuirnever/article/details/94122670 在python中运行代码经常会遇到的情况是--代码可以正常运行但是会提示警告 ...

  7. mysql ignore index_mysql use index、ignore index、force index用法

    原创你去了哪里 最后发布于2019-10-18 14:05:48 阅读数 121  收藏 展开 1:use index:在你查询语句表名的后面,添加use index来提供你希望mysql去参考的索引 ...

  8. cin输入问题的处理:cin.clear() 、cin.sync() 、cin.ignore()

    1.cin.clear():清除cin流的错误状态,将错误标识改为默认0 2.cin.sync():清除缓冲区的数据 3.cin.ignore(): 其原型为: istream & ignor ...

  9. C++ cin.ignore()用法

    cin.ignore(int a,char b); a为一行中最大读取字符长度,b为某一个字符.在缓冲区中寻找b,找到后忽略b以前的所有字符(包括b).如果在a的范围内还没有找到b,则忽略b以前的所有 ...

最新文章

  1. Python中“is”和“==”的区别
  2. 你必须掌握的 21 个 Java 核心技术!
  3. GAN的基本原理与入门应用!
  4. python 网络爬虫学习笔记(一)
  5. Loadrunner无法打开浏览器的相关问题
  6. jzoj6342-[NOIP2019模拟2019.9.7]Tiny Counting【树状数组,容斥】
  7. okta-spring_通过Okta的单点登录保护Spring Boot Web App的安全
  8. 云原生除了K8S、微服务,还有...?
  9. c语言怎样用格式化文件存储,如何用格式化的方式读写文件
  10. 教育行业视频号矩阵建设与运营策略分析报告
  11. java学习中,字符串使用(比较、构造方法)(java 学习中的小记录)
  12. yii2GridView的简单使用
  13. Jsp 购物车(oracle数据库)之初级版
  14. Python中文手册——开胃菜
  15. 力扣 69. x 的平方根 三种方法
  16. 【Linux从青铜到王者】第二十四篇:Linux网络基础第四篇之WebSocket协议
  17. 新浪邮箱接收服务器,新浪和雅虎的邮箱的接收服务器分别是什么?
  18. python exe文件反编译_[原创]python exe文件解包方法总结
  19. (E4)ENVI-met运行结果处理
  20. 强化学习实战-使用Q-learning算法解决悬崖问题

热门文章

  1. python subprocess_python subprocess
  2. 商品详细信息的代码html_电商网站的商品详情页系统架构
  3. java 1 11 111_45675678ystem111111111111
  4. java perl_在Java中调用Perl脚本
  5. c 找文件服务器文件,Linux C/C++项目:虚拟文件服务器(功能匹配百度网盘)
  6. centos运行jar包需要的环境_Centos7服务器下启动jar包项目的最佳方法
  7. linux内核路由反向检查,Linux非对称路由
  8. ggplot2中显示坐标轴_R可视化11|ggplot2-图层图形语法 (3)
  9. 对象特性-构造函数和析构函数
  10. cocos 卡牌类_优质链游大爆发,Cocos-BCX版《恶龙必须死》有什么特别之处?