BeautifulReport自动化测试报告不显示测试数据的解决方法
一.现象:
之前生成的报告都能正常打开,有一段时间没有运行,今天运行自动化脚本后,查看html报告,发现界面没有显示测试数据,如下:
F12刷新界面后,有报错信息显示:
搜索报错信息后了解到,问题的核心是浏览器无法加载外部资源文件,导致UI界面无法正确渲染,可能是外部资源的证书已经过期或者链接无法访问。
二.解决方案:
HTML报告尝试通过 https://cdn.bootcss.com/
加载资源,但该CDN的证书问题导致无法加载,可以使用其他CDN服务来替换这些链接;修改HTML报告中的 <link>
和 <script>
标签,将 https://cdn.bootcss.com/
替换为其他可用的CDN;具体操作如下:
1.用文本编辑器打开python311\Lib\site-packages\BeautifulReport\template目录下template文件
2.找到link href:
3.删除原来的link href;替换成下列link href地址:
<link href="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/4.6.1/css/bootstrap.css" rel="stylesheet">
<link href="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/4.6.1/css/bootstrap.min.css" rel="stylesheet">
<link href="https://cdn.bootcdn.net/ajax/libs/font-awesome/6.0.0-beta3/css/fontawesome.css" rel="stylesheet">
<link href="https://cdn.bootcdn.net/ajax/libs/animate.css/4.1.1/animate.min.css" rel="stylesheet">
<link href="https://cdn.bootcdn.net/ajax/libs/chosen/1.8.8.rc6/chosen.css" rel="stylesheet">
4.找到script src:
5.删除原来的script src;替换成下列script src地址:
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/4.6.1/js/bootstrap.min.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.2.2/echarts.min.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/chosen/1.8.8.rc6/chosen.jquery.js"></script>
6.重新运行脚本,生成测试报告,查看报告显示正常了: