自动化运行后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,重新运行自动化程序,报告生成。

相关推荐
小臭希5 分钟前
python蓝桥杯备赛常用算法模板
开发语言·python·蓝桥杯
GoMaxAi6 分钟前
金融行业 AI 报告自动化:Word+PPT 双引擎生成方案
人工智能·unity·ai作画·金融·自动化·aigc·word
独行soc7 分钟前
2025年常见渗透测试面试题-红队面试宝典下(题目+回答)
linux·运维·服务器·前端·面试·职场和发展·csrf
mosaicwang11 分钟前
dnf install openssl失败的原因和解决办法
linux·运维·开发语言·python
蹦蹦跳跳真可爱58931 分钟前
Python----机器学习(基于PyTorch的乳腺癌逻辑回归)
人工智能·pytorch·python·分类·逻辑回归·学习方法
Bruce_Liuxiaowei34 分钟前
基于Flask的Windows事件ID查询系统开发实践
windows·python·flask
小丁爱养花37 分钟前
驾驭 Linux 云: JavaWeb 项目安全部署
java·linux·运维·服务器·spring boot·后端·spring
carpell1 小时前
二叉树实战篇1
python·二叉树·数据结构与算法
C-20021 小时前
Dashboard的安装和基本使用
运维·kubernetes
HORSE RUNNING WILD1 小时前
为什么我们需要if __name__ == __main__:
linux·python·bash·学习方法