JUnit规则
在本节中,我们学习和了解JUnit中叫做规则的新功能,它允许非常灵活在测试类重新定义每个测试方法的行为。为了这个目的,@Rule注解被使用来标出测试类的公共字段。这些字段类型为MethodRule,这是测试方法如何运行并报告。多个MethodRules可以应用到一个测试方法。MethodRule接口有很多的实现,如ErrorCollector在发现了第一个问题之后,也允许继续执行一个测试,ExpectedException 允许在测试规范预期的异常类型和消息,TestName 使得目前的测试名称在测试方法内部可用,以及其他许多。除了那些已经定义的规则,开发人员可以创建自己的自定义规则,并使用来测试自己用例。
下面我们介绍方法,可以使用一个名为TestName,在我们自己现有的测试规则。 TestName被调用在测试开始时。
NameRuleTest.java
package com.javacodegeeks.junit; import static org.junit.Assert.*; import org.junit.*;
import org.junit.rules.TestName; public class NameRuleTest {
@Rule
public TestName name = new TestName(); @Test
public void testA() {
System.out.println(name.getMethodName());
assertEquals("testA", name.getMethodName()); } @Test
public void testB() {
System.out.println(name.getMethodName());
assertEquals("testB", name.getMethodName());
}
}
我们可以看到,@Rule注解标记的类型是MethodRule的公共字段名,具体而言是TestName类型。 然后,可以在我们的测试中,这名称字段使用和查找,例如测试方法的名称,这种特定情况。
JUnit规则的更多相关文章
- sonar:默认的扫描规则
https://blog.csdn.net/liumiaocn/article/details/83550309 https://note.youdao.com/ynoteshare1/index.h ...
- Spring官方文档翻译
随笔:有人曾这样评价spring,说它是Java语言的一个巅峰之作,称呼它为Java之美,今天,小编就领大家一起来领略一下spring之美! Spring官方文档:http://docs.spring ...
- Spring官方文档翻译(1~6章)
Spring官方文档翻译(1~6章) 转载至 http://blog.csdn.net/tangtong1/article/details/51326887 Spring官方文档.参考中文文档 一.S ...
- Android App Architecture使用详解
Android应用架构简介 对于经过过构建app的Android开发人员来说, 现在是时候了解一下构建鲁棒, 质量高的应用的最佳实践和推荐架构了. 这篇文章假设读者对Android framework ...
- Spring Cloud(中文版)
原文链接:Spring Cloud I.云原生应用 Spring Cloud上下文:应用上下文服务 2.1.Bootstrap应用程序上下文 2.2.应用程序上下文层次结构 2.3.更改Bootstr ...
- 你应该将应用迁移到Spring 4的五个原因
本文来源于我在InfoQ中文站翻译的文章,原文地址是:http://www.infoq.com/cn/news/2015/12/five-reasons-to-migrate-spring4 Rafa ...
- Mockito图书馆
转载:https://static.javadoc.io/org.mockito/mockito-core/2.12.0/org/mockito/Mockito.html#42 org.mockito ...
- Spring版本功能变更&Spring4.x的新特性
有朋友想知道Spring不同版本都有哪些功能变更,说直接在百度搜索找到的结果都不是想要的,其实还是关键词不对,找Spring不同版本的新特性就能获得更好的结果.其实在Spring工程github的wi ...
- Spring boot参考指南
介绍 转载自:https://www.gitbook.com/book/qbgbook/spring-boot-reference-guide-zh/details 带目录浏览地址:http://ww ...
随机推荐
- TCPConnectionTermination
http://www.serverframework.com/asynchronousevents/2011/01/time-wait-and-its-design-implications-for- ...
- 查准与召回(Precision & Recall)
Precision & Recall 先看下面这张图来理解了,后面再具体分析.下面用P代表Precision,R代表Recall 通俗的讲,Precision 就是检索出来的条目中(比如网页) ...
- Android 编程下通过 zipalign 对 APK 文件进行优化
zipalign zipalign is an archive alignment tool that provides important optimization to Android appli ...
- css设置让a标签充满整个li
首先贴一段html代码: <li id="sendText"><a href="#" title="发送文字">&l ...
- iis下php 500错误
很不想用iis,然而客户不想增加机器,只好按客户的意思了.可是没想到发送短信以在本地 机器上是好的,在iis下直接500. 一开始以为是防火墙问题,后来检查了一下没有,再后来换了一个短信接口, ...
- ython strip lstrip rstrip使用方法
Python中的strip用于去除字符串的首尾字符,同理,lstrip用于去除左边的字符,rstrip用于去除右边的字符. 这三个函数都可传入一个参数,指定要去除的首尾字符. 需要注意的是,传入的是一 ...
- 微信小程序学习资料
官方文档 https://mp.weixin.qq.com/debug/wxadoc/dev/ W3CSchool的教程 https://www.w3cschool.cn/weixinapp/ 更多参 ...
- C语言 · 十进制数转八进制数
算法训练 十进制数转八进制数 时间限制:1.0s 内存限制:512.0MB 编写函数把一个十进制数输出其对应的八进制数. 样例输入 9274 样例输出 22072 #includ ...
- Selenium (2) —— Selenium WebDriver + Grid2(101 Tutorial)
Selenium (2) -- Selenium WebDriver + Grid2(101 Tutorial) jvm版本: 1.8.0_65 selenium版本: v2.48.0 (Standa ...
- Android训练课程(Android Training) - 测试你的Android Activity
你应该开始编写和启动测试作为你的android程序开发周期的一部分.写的好的测试能够帮助你更早的发现bug和使你对你的代码有信心. 一个测试用例定义了一些对象和方法的集合,用于启动多样的彼此独立的测试 ...