junit 参数化测试用例_JUnit:在参数化测试中命名单个测试用例

junit 参数化测试用例

几年前,我写了有关JUnit参数化测试的文章 。 我不喜欢它们的一件事是JUnit使用数字命名了单个测试用例,因此,如果它们失败,您将不知道是哪个测试参数导致了失败。 以下Eclipse屏幕快照将向您展示我的意思:

没有名称的参数化测试

但是,在JUnit 4.11中, @Parameters批注现在带有一个name变量,可用于在测试名称中显示参数,从而使它们更具描述性。 您可以在此参数中使用以下占位符,它们将在运行时由JUnit替换为实际值:

  • {index} :当前参数索引
  • {0}{1} ,…:第一个,第二个,依此类推,参数值

这是一个例子:

import static org.junit.Assert.assertEquals;import java.util.Arrays;
import java.util.Collection;import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;@RunWith(Parameterized.class)
public class StringSortTest {@Parameters(name = "{index}: sort[{0}]={1}")public static Collection<Object[]> data() {return Arrays.asList(new Object[][] {{ "abc", "abc"},{ "cba", "abc"},{ "abcddcba", "aabbccdd"},{ "a", "a"},{ "aaa", "aaa"},{ "", ""}});}private final String input;private final String expected;public StringSortTest(final String input, final String expected){this.input = input;this.expected = expected;}@Testpublic void testSort(){assertEquals(expected, sort(input));}private static String sort(final String s) {final char[] charArray = s.toCharArray();Arrays.sort(charArray);return new String(charArray);}
}

运行测试时,您将看到单独的测试用例,如下面的Eclipse屏幕快照所示,因此很容易识别每个测试用例中使用的参数。

带有个别测试用例命名的参数化测试

请注意,由于Eclipse中的错误 ,包含括号的名称将被截断。 这就是为什么我必须使用sort[{0}]而不是sort({0})

参考: JUnit:在我们的JCG合作伙伴 Fahd Shariff的fahd.blog博客中为参数化测试中的各个测试用例命名 。

翻译自: https://www.javacodegeeks.com/2013/04/junit-naming-individual-test-cases-in-a-parameterized-test.html

junit 参数化测试用例

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/348913.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MX250和第三方Linux版区别,MX250和MX350哪个好一点,区别和差距在哪里?求推荐?_科技数码通...

MX350系列显卡使笔记本颜值变得更高&#xff0c;性能更强&#xff0c;更轻便&#xff0c;在轻便笔记本需求变得越来越大&#xff0c;但性能也要求越来越高&#xff0c;特别是在图像处理方面&#xff0c;这个时候MX系列的显卡便应运而生&#xff0c;其拥有者超低的功耗&#xff…

linux r包默认安装位置,R-Language(R语言或称r-project)的安装

1、R语言的简介R语言(r-project)是主要用于统计分析、绘图的语言和操作环境。2、配置yum源2.1、安装说明由于编译安装相对繁琐&#xff0c;故而安装使用repoforge的源解决&#xff0c;免去编译的麻烦。注意&#xff1a;请根据实际的系统OS版本选取合适的YUM源。2.3、rpmforge源…

aws s3 命令行_通过命令行界面使用AWS ElasticMapReduce

aws s3 命令行在本文中&#xff0c;我将通过使用EMR的CLI使用AWS MapReduce服务&#xff08;称为ElasticMapReduce &#xff09;。 使用EMR的过程可以大致分为三个步骤&#xff1a; 设置并填充S3存储桶 创建并运行EMR作业 从S3存储桶中获取结果 在开始这三个高级步骤之前&…

在5分钟内将Spring Boot作为Windows服务启动

最近&#xff0c;我不得不将Spring Boot应用程序部署为Windows服务&#xff0c;并且对使用winsw如此容易感到惊讶。 我之前曾写过关于使用procrun – Java程序作为Windows服务的文章 &#xff0c;但是winsw更加容易 入门 Spring Boot文档的第59节是有关安装Spring Boot应用程序…

Android 画布画线,android实现一个简单的画布,可以用手指画线条。

满意答案wpdhc2016.07.05采纳率&#xff1a;49% 等级&#xff1a;7已帮助&#xff1a;359人public class DrawView extends View {Context mycontext;int toasttime 1000*60;boolean enabletoast true;//之前的坐标float preX;float preY;//路径private Path path;//画笔p…

设置html文字居中自动换行,CSS怎么设置文字自动换行?

CSS怎么设置文字自动换行&#xff1f;下面本篇文章就给大家介绍css设置文字(特别是连续的数字和英文)自动换行的方法。有一定的参考价值&#xff0c;有需要的朋友可以参考一下&#xff0c;希望对你们有所帮助。关于换行问题&#xff0c;正常字符的换行是比较合理的&#xff0c;…

html霓虹灯效果图,HTML5 SVG+CSS3霓虹灯文字边框动画特效

【实例简介】【实例截图】【核心代码】使用SVG CSS实现动态霓虹灯文字效果#svgBox{[/b] width:100%;margin:100px auto;}.text{font-size: 64px;font-weight: bold;text-transform: uppercase;fill: none;stroke-width: 2px;stroke-dasharray: 90 310;animation: stroke 6s inf…

吉林省2021高考成绩排名查询,2021年吉林高考成绩排名查询系统,吉林高考位次排名表...

最近好多家长和考生留言&#xff0c;希望知道&#xff1a;吉林高考位次是什么&#xff1f;吉林高考位次与名次的区别&#xff1f;如何根据位次选大学&#xff1f;2020年吉林高考位次就是指考生高考成绩在全省同类考生中的位置。高考位次主要分为三大类&#xff1a;省市位次、区…

Picocli 2.0:类固醇上的Groovy脚本

Picocli 2.0增加了对其他JVM语言&#xff08;尤其是Groovy&#xff09;的支持。 当Groovy语言具有CliBuilder类的内置CLI支持时&#xff0c;为什么要使用picocli&#xff1f; 您可能会喜欢picocli的使用帮助&#xff0c;默认情况下会显示ANSI 颜色和样式 。 您可能喜欢的另一个…

angular字符串转成html,详解angular如何调用HTML字符串的方法

详解angular如何调用HTML字符串的方法前面的文章我们介绍过angular6.0的数据绑定&#xff0c;也就是前面页面如何调用后台的数据&#xff0c;我们接触到了调用普通数据——如&#xff1a;调用产品详情{{post.content}}。在使用中&#xff0c;我们会发现&#xff0c;如果按原来的…

html flash层级,解决FLASH遮住其他层元素问题

刚做了个幻灯片广告&#xff0c;产品人员需要在第一个位置放flash&#xff0c;然后其他的都是图片&#xff0c;但是幻灯片切换到第一张的时候&#xff0c;圆圈tab元素不见了&#xff0c;只有在谷歌浏览器下面正常&#xff0c;用firebug看是被flash盖住了&#xff0c;&#xff0…

prng伪随机数生成器_Java伪随机数生成器(PRNG)中的弱点

prng伪随机数生成器这将是Kai Michaelis&#xff0c;JrgSchwenk和我撰写的论文的总结&#xff0c;该论文在RSA Conference 2013的密码学家会议上发表 。 你可以得到我的演讲的幻灯片在这里和我们的全文在这里 。 我们对PRNG&#xff08;主要是SecureRandom&#xff09;附带的常…

五个使Java变得更好的功能

我偶然发现了Brian Goetz 提出的有关Java数据类的建议 &#xff0c;立即意识到我也对如何使Java更好地成为一种语言有一些想法。 我实际上有很多&#xff0c;但这只是五个最重要的列表。 专制&#xff08;2006&#xff09;&#xff0c;迈克贾奇&#xff08;Mike Judge&#xf…

html选中列表整列变色,excel选中行变色完整代码和动画效果

内容提要&#xff1a;文章介绍excel选中行变色的效果以及实现选中行变色的VBA代码。在excel中如果行数过多&#xff0c;经常核对数据的准确性&#xff0c;容易错行跳行&#xff0c;所以才有本文的小技巧&#xff1a;excel选中行变色。当我们在excel工作表中&#xff0c;鼠标随便…

构造函数还是静态工厂方法?

我相信Joshua Bloch在他的非常好的书“ Effective Java”中首先说了它&#xff1a;与构造函数相比&#xff0c;静态工厂方法是实例化对象的首选方法。 我不同意。 不仅因为我相信静态方法是纯粹的邪恶&#xff0c;而且主要是因为在这种特殊情况下&#xff0c;它们伪装成好的方法…

html vue分页,Vue.js bootstrap前端实现分页和排序

写之前先抱怨几句。本来一心一意做.net开发的&#xff0c;渐渐地成了只做前端。最近项目基本都用java做后台&#xff0c;我们这些.net的就成了前端&#xff0c;不是用wpf做界面&#xff0c;就是用html写web页面。深知自己前端技术不足&#xff0c;以前虽说用asp.net前后台都做&…

计算机管理ap,如何设置AC功能管理无线AP

AC功能管理无线AP第一步、连接ap举例型号TL-ER6520G不同类型的AP供电方式可能有所差异&#xff0c;包括直流电源供电和网线供电(PoE供电)两种。如下[1] 直流电源供电使用自带的电源适配器给AP供电&#xff0c;要求AP安放位置必须有电源插座&#xff0c;优点是节省成本。按照拓扑…

代表机械 计算机技术的颜色,基于机器视觉识别的交通灯控制系统

1、引言机器视觉又称计算机视觉&#xff0c;是用计算机来实现人的视觉功能&#xff0c;也就是用机器代替人眼来做测量和判断。机器视觉技术包含光源照明技术、光成像技术、传感器技术、数字图像处理技术、机械工程技术、检测控制技术、模拟与数字视频技术、计算机技术、人机接口…

java开发者工具开源版_JArchitect对Java开源贡献者免费

java开发者工具开源版JArchitect是用于Java代码库的静态分析工具&#xff0c;它提供交互式GUI和HTML报告&#xff0c;用于查找代码中过于复杂或有问题的区域&#xff0c;执行分析以重构并比较随时间的变化。 在版本3中&#xff0c;添加了类似LINQ的查询语言&#xff0c;该工具使…

计算机上没有启动程序怎么办,Win7开机不加载启动项怎么办

现在的电脑为了受到更好的保护&#xff0c;往往在开机的时候就加载了一些启动项&#xff0c;如&#xff1a;杀毒软件&#xff0c;安全卫士等等。可有时候会发现&#xff0c;在Win7操作系统中&#xff0c;安装后发现不能开机加载启动项。在注册表中&#xff0c;在msconfig中&…