想了解@TestCaseName注释与Junit4中@FileParameters注释相结合的用法

问题描述 投票:0回答:1

我目前正在使用Junit4进行测试,因为我有一个任务来了解@TesCaseName注释的用法,我已经引用了一些链接,并了解了使用@Parameters注释的@TestCaseName注释的用法,但我想知道有关@TestCase注释与@FileParmeters注释结合使用的信息,如果有人知道,请与我分享@TesCaseName注释与Junit4中的@FileParameters注释结合的示例。

junit4 junitparams
1个回答
0
投票
@TestCaseName允许您修改如何在报告中显示测试用例的名称(例如,在您的IDE或Maven Surefire报告中)。默认命名为{method}({params}) [{index}]。您可以使用占位符来创建自己的测试用例名称。参见junitparams.naming.TestCaseName#value的Javadoc:

各个测试用例名称的模板。该模板可以包含宏,这些宏将在运行时被其实际值替换。

支持的宏为:

  • {{index}-的索引参数集(从零开始)。提示:用它来避免名字复制。
  • {{params}
  • -参数集由
  • {{method}
  • -测试方法名称。
  • {0}
  • {1}{2}-当前参数集中按索引的单个参数。如果没有带有该索引的参数,它将使用空字符串。
假设我们正在测试斐波那契序列发生器。我们通过以下签名进行测试@Parameters({ "0,1", "8,34" }) public void testFibonacci(int indexInSequence, int expectedNumber) { ... }
以下是一些示例,可以用作测试名称模板: 

    {method}({params}) => testFibonacci(0,1),testFibonacci(8,34)
  • [fibonacci({0}) = {1} => fibonacci(0)= 1,fibonacci(8)= 34
  • [{0} element should be {1} => 0元素应为1,8元素应为34
  • [Fibonacci sequence test #{index} =>斐波那契序列测试#0,斐波那契序列测试#1
  • @FileParameters@TestCaseName没有任何关系-这只是从文件向测试方法提供参数的一种方式。使用上面的示例,您可以使用@Parameters代替@FileParameters("/path/to/file.txt"),并使用内容[>包含/path/to/file.txt]

    0,1 8,34

    以达到相同的结果。
  • © www.soinside.com 2019 - 2024. All rights reserved.