TestNG - 数据驱动修改函数名称

背景

使用关键字驱动反射到方法,结果展示的都是入口函数的函数名。


TestNG - 数据驱动修改函数名称_第1张图片
image.png

解决方案

  • 测试入口类实现implements ITest
  • 定义变量private String testMethodName = "";
  • 增加@BeforeMethod方法,将绑定到dataProvider上的数据取出,赋值给testMethodName
  • Override ITest接口上的getTestName(),返回testMethodName
    @BeforeMethod(alwaysRun = true)
    public void testData(Method method, Object[] testData) {
        for(Object myTest:testData){
            if(myTest instanceof Map){
                testMethodName = ((Map)myTest).get("Method").toString();
            }
        }
    }

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

https://stackoverflow.com/questions/15220262/custom-test-method-name-in-testng-reports

你可能感兴趣的:(TestNG - 数据驱动修改函数名称)