使用 JunitCore 时,Allure 框架不生成详细报告

Allure framework isn’t producing detailed reports when using JunitCore

我正在 运行使用 JUnitCore 进行 Junit 测试。 我正在尝试使用 allure 框架进行报告。 文档建议使用 JUnitCore.addListener() 添加 AllureRunListener。 但是,无论我如何尝试,诱惑报告都是空的。 他们显示 运行 的测试,也失败断言,但没有 @step,@attachment.

我尝试搜索使用 JunitCore 而不是 maven 插件的 allure 报告的示例,但找不到任何东西(运行 使用 maven 的测试工作正常,并且 allure 报告一切正常)。

如何实现?

JunitCore 运行ing -

 public static void main(String[] args) {
        AllureRunListener allureListener =new AllureRunListener();

        JUnitCore core = new JUnitCore();
        core.addListener(allureListener);
        Result result = core.run(BuildNetworkTest.class);
        //Result result = core.runClasses(TestSuite.class);

        for (Failure failure : result.getFailures()) {
            System.out.println(failure.toString());
        }
        System.out.println(result.wasSuccessful());
    }

测试-

 @Test
    public void BuildNetwork(){
        try {
            Build buildFactory = new Build();
            System.out.println("running the BuildNetwork test in TestRunnerPac.BuildNetwork");
            StepTemp();
            attachmentTemp();
        }catch (Exception e)
        {
            System.out.println(e.getMessage());
            e.printStackTrace();
        }
    }

  @Step
    public void StepTemp(){
        assertThat("stepTemp").isEqualTo("stepTemp");
        System.out.println("In stepTemp..");
    }
    @Attachment
    public String attachmentTemp(){
        return "this is an attachmentTemp , hope it will work..";
    }

确保使用指向 aspectjweaver.jar-javaagent 参数启动测试,例如:

java -javaagent:"/path/to/aspectjweaver.jar" <the rest of the arguments>

如果您使用的是 Maven Surefire 插件,请查看以下内容example,了解如何执行此操作。