自动化运行后BeautifulReport内容为空

一、问题描述

自动化程序运行后发现运行目录下生成的html报告文件内容为空,没有运行结果。

二、测试环境

  1. 操作系统:Windows 11 家庭版
  2. BeautifulReport:0.1.3
  3. Python:3.11.9
  4. Appium-Python-Client:5.0.0
  5. Appium Server:2.17.1

三、源代码

复制代码
import unittest
import os

from appium import webdriver
from appium.options.android import UiAutomator2Options
from appium.webdriver.common.appiumby import AppiumBy
from BeautifulReport import BeautifulReport  # 导入 BeautifulReport

capabilities = dict(
    platformName='Android',
    automationName='uiautomator2',
    deviceName='Android',
    appPackage='com.android.settings',
    appActivity='.Settings',
    language='en',
    locale='US'
)

appium_server_url = 'http://localhost:4723'

class TestAppium(unittest.TestCase):
    def setUp(self) -> None:
        self.driver = webdriver.Remote(appium_server_url, options=UiAutomator2Options().load_capabilities(capabilities))

    def tearDown(self) -> None:
        if self.driver:
            self.driver.quit()

    def test_find_battery(self) -> None:
        el = self.driver.find_element(by=AppiumBy.XPATH, value='//*[@text="Battery"]')
        el.click()


if __name__ == '__main__':
    report_dir = './reports'
    if not os.path.exists(report_dir):
        os.makedirs(report_dir)
    suite = unittest.TestSuite()
    suite.addTest(unittest.makeSuite(TestAppium))
    runner = BeautifulReport(suite)
    runner.report(
        filename='test_report.html',  # 报告文件名
        description='Appium Test Report',  # 报告描述
        report_dir=report_dir  # 报告保存路径
    )

四、解决办法

报告模板中的资源加载失败。修改 BeautifulReport 的模板文件 template.html

1.template.html文件位置

作者的位置如下,每个人自己的路径不一样,仅供参考。

html 复制代码
C:\Users\PAL\AppData\Roaming\Python\Python311\site-packages\BeautifulReport\template

2.替换

替换成下面的 CSS 和 JavaScript 链接

html 复制代码
<!-- CSS -->
<link href="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
<link href="https://cdn.bootcdn.net/ajax/libs/font-awesome/5.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">

<!-- JavaScript -->
<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/3.3.7/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>

3.保存

修改后保存template.html,重新运行自动化程序,报告生成。

相关推荐
其实防守也摸鱼13 分钟前
CTF密码学综合教学指南--第五章
开发语言·网络·笔记·python·安全·网络安全·密码学
.小小陈.19 分钟前
Linux 线程概念与控制:从底层原理到实战应用
linux·运维·jvm
网络工程小王25 分钟前
【LangChain 大模型6大调用指南】调用大模型篇
linux·运维·服务器·人工智能·学习
wangbing112530 分钟前
各linux版本的包管理命令
linux·运维·服务器
Joseph Cooper1 小时前
Linux/Android 跟踪技术:ftrace、TRACE_EVENT、atrace、systrace 与 perfetto 入门
android·linux·运维
callJJ1 小时前
Spring Data Redis 两种编程模型详解:同步 vs 响应式
java·spring boot·redis·python·spring
小郑加油1 小时前
python学习Day12:pandas安装与实际运用
开发语言·python·学习
AC赳赳老秦1 小时前
投标合规提效:用 OpenClaw 实现标书 / 合同自动审核、关键词校验、格式优化,降低废标风险
开发语言·前端·python·eclipse·emacs·deepseek·openclaw
.柒宇.1 小时前
AI掘金头条项目-K8s部署实战教程
python·云原生·容器·kubernetes·fastapi
比昨天多敲两行2 小时前
Linux基础开发工具(下)
linux·运维·服务器