如何在testng的参数化测试中为每组数据设置一个不同的标题?

时间:2017-01-11 16:13:57

标签: testng title allure testng-dataprovider

我想在每个测试用例中看到不同的标题。

现在,标题是从方法名称创建的。

Same titles

是否有可能以某种方式获得标题?

@Title("Maybe as step: {0}?????")
@Step("{0}")
@Test(dataProviderClass = Sorm3ExtractMainTest.class, dataProvider = "getJsonForDictDependDwlTest")
public void Sorm3ExtractDictDependDwlTest
  {...}

2 个答案:

答案 0 :(得分:0)

如果您实施ITest,您应该能够指定所需的测试名称。

public class YourClass implements ITest {
  private String name;

  @Step("{0}")
  @Test(dataProviderClass = Sorm3ExtractMainTest.class, dataProvider = "getJsonForDictDependDwlTest")
  public void Sorm3ExtractDictDependDwlTest {
     name = "Maybe as step: {0}?????";
     ...
  }

  @Override
  public String getTestName() {
    return name;
  }

答案 1 :(得分:0)

它似乎没有在TestNG适配器中实现。您只需要自己修复它并使用而不是默认的Allure TestNG适配器。对于onTestStart()修复new TestCaseStartedEvent(...).withLabels(),只需添加.withTitle()即可。不要忘记NPE检查。