如何使用数据提供程序获取黄瓜步骤并写入json文件?

问题描述

@Test(dataProvider = "scenarios")
    public void runScenario(PickleWrapper pickleWrapper,FeatureWrapper featureWrapper,ITestContext iTestContext)
            throws Throwable {
        System.out.println(pickleWrapper.getPickle().getName());
        System.out.println(pickleWrapper.getPickle().getLine());
        String browser = iTestContext.getCurrentXmltest().getLocalParameters().get("browser");

        System.out.println("Running Test on browser:" + browser + " Thread ID:" + Thread.currentThread().getId());
        if (ExtentReportManager.getFeature(featureWrapper.toString()) == null) {
            ExtentReportManager.startFeature(featureWrapper.toString());
            ExtentReportManager.startScenario(featureWrapper.toString(),pickleWrapper.getPickle().getName());
            ExtentReportManager.getScenario().assignCategory(browser);

        } else {
            ExtentReportManager.startScenario(featureWrapper.toString(),pickleWrapper.getPickle().getName());
            ExtentReportManager.getScenario().assignCategory(browser);
        }
        DriverManager.setScenarioName(pickleWrapper.getPickle().getName());
        DriverManager.setFeatureName(featureWrapper.toString());
        testNGCucumberRunner.runScenario(pickleWrapper.getPickle());
    }

    @DataProvider(parallel = true)
    public Object[][] scenarios() {
        return testNGCucumberRunner.provideScenarios();
    }

这是我的跑步者课,我想获取我的场景步骤并将它们写入json文件,并在将json文件发送到elasticsearch之后添加该json文件的场景结果。 我已经与弹性搜索建立了联系,我在每种情况下都发送结果,但是现在我想在完成所有测试情况后发送结果。

该怎么做,您能帮我吗?

解决方法

您可以尝试qaf-cucumeber,它可以立即使用elastic-search integration。您也可以使用similar自定义实现。 TestCaseRunResult提供了每个步骤和检查点的详细信息。此外,它还提供了纯TestNG实现,用于对utilize all TestNG features进行行为驱动的测试。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...