Allure 报告 html 未加载 json 数据

问题描述 投票:0回答:3

我使用 Java 运行测试并使用 Allure 收集结果。结果文件夹

allure-results
生成了一组 json 文件。如果我使用,我可以看到报告
allure serve allure-results
。 但是,我想生成 html 以便以后随时查看。所以我通过
allure generate allure-results --clean -o allure-report
来做。结果生成带有 html 文件的文件夹。但是,当我打开该文件时,数据未加载。请参阅下面的附件。 在控制台中我收到 CORS 策略错误。示例如下。

Acess to XMLHttpRequest at 'file:///Users/jgitlin/Documents/proj/CommServ_E2E_Automation/build/allure-results/widgets/summary.json' from origin 'null' has been blocked by CORS policy: Cross origin requests are only supported for protocol schemes: http, data, isolated-app, chrome-extension, chrome, https, chrome-untrusted.

我生成报告的方式有问题吗?或者有没有办法正确查看 html?

java allure
3个回答
1
投票

您可以轻松地使用您选择的任何Web服务器来提供Allure报告,例如Python的内置HTTP就可以让我向您解释一下

首先打开终端或命令提示符并导航到生成

Allure report
的目录

然后,像这样启动Python HTTP服务器(它将在端口9001上启动服务器,但您可以使用您喜欢的任何其他端口号!):

python -m http.server 9001

最后,打开浏览器,前往

http://localhost:9001/allure-report
查看Allure报告!

使用此方法,您将绕过

CORS policy
并允许浏览器正确加载必要的资源

祝你好运!


0
投票

您可以使用 allure 命令行查看实际报告;

allure 打开 allure-report


0
投票

CORS策略导致的错误主要是因为不允许跨源请求。要解决 Google Chrome 中的此问题,您可以通过在运行浏览器时添加“--allow-file-access-from-files”选项来启用它。

你可以参考这个: 跨源请求仅支持 HTTP,但不支持跨域

© www.soinside.com 2019 - 2024. All rights reserved.