空extentX报告

时间:2016-12-14 15:13:29

标签: mongodb extentreports extent

extentX看起来像是一个完美的解决方案,是一组测试结果。

但是,我已经按照所有说明操作并完成了所有操作,但似乎测试信息似乎没有达到扩展页面。

它是空的。我可以从仪表板上看到测试已经运行,但项目是默认的,点击它们显示没有信息,但我可以看到它正在获取一些数据,因为它显示已经运行了多少测试以及传递了多少信息。

有什么明显的事我做错了吗?

我可以看到标准范围报告工作正常,但似乎确实传递到extentX服务器。

我现在正在本地运行所有内容作为其概念证明。

我正在使用版本3.0.1的extentreports

如果有人知道在单个集线器上显示多个测试报告的任何替代方案,那么任何获得此工作的帮助都将受到赞赏

使用以下页面 - https://github.com/anshooarora/extentreports-java/issues/652#issuecomment-254078018

我设法得到了一点点,但现在我收到了以下错误

java.lang.ExceptionInInitializerError 在以下一行

ExtentTest parent = ExtentTestManager.createTest(testName);

这是我的TestNG Base

公共类TestBase {

private String uri;
protected Logger APPLICATION_LOGS = LoggerFactory.getLogger(getClass());
private static ExtentReports extent;
private ThreadLocal<ExtentTest> parentTest;
private ThreadLocal<ExtentTest> test;
public static ExtentTest childTest;

protected String getUri() {
    return uri;
}

@BeforeSuite
@Parameters({"env"})
public void initialiseReport(String env) {

    ExtentXReporter extentxReporter = new ExtentXReporter("localhost:27017");
    ExtentHtmlReporter htmlReporter = new ExtentHtmlReporter(("user.dir") + "/target/ExtentReports.html");


    extentxReporter.config().setServerUrl("localhost:1337");
    extent = new ExtentReports();
    extent.attachReporter(htmlReporter, extentxReporter);
}

@BeforeClass
@Parameters({"protocol", "env", "server", "port", "endPoint", "testName"})
public void initialiseURI(String protocol, String env, String server, String port, String endPoint, String testName) {
    uri = protocol + env + "." + server + ".mcom:" + port + "/" + endPoint;
    APPLICATION_LOGS.debug("Will use the following URI: " + uri);

    baseURI = uri;
    given().when().post().then().statusCode(200);

    ExtentTest parent = ExtentTestManager.createTest(testName);
    parentTest.set(parent);

}

@BeforeMethod
public final void beforeMethod(Method method) {

    childTest = parentTest.get().createNode(method.getName());
    test.set(childTest);

}

@AfterMethod
public void afterMethod(ITestResult result) {
    switch (result.getStatus()) {
        case ITestResult.FAILURE:
            childTest.fail(result.getThrowable());
            break;
        case ITestResult.SKIP:
            childTest.skip(result.getThrowable());
            break;
        case ITestResult.SUCCESS:
            childTest.pass("Passed");
            break;
        default:
            break;
    }
}

@AfterSuite
public void completeReport() {

    ExtentManager.getExtent().flush();
}

}

使用此git项目进行管理以使其正常工作

https://github.com/saikrishna321/extent_reports

但是我的extentX页面仍然是空的,它显示已运行了多少测试但没有附加报告。

1 个答案:

答案 0 :(得分:1)

原来我使用了错误的extentX distrubution。

从wbesite下载拉链时 - https://drive.google.com/open?id=0ByJmgAhaLx0GcmVYNkhBSThUcG8

有效