python使用HTMLTestRunner.py生成测试报告

这里我使用的是python selenium webdriver环境,浏览器驱动安装见selenium安装

1、下载HTMLTestRunner.py:http://tungwaiyip.info/software/HTMLTestRunner.html

  python3环境需要对该文件的六个地方进行修改,修改后放置python\Lib目录下

复制代码
import unittest,time,os
from selenium import webdriver
from config.HTMLTestRunner_Chart_Change import HTMLTestRunner
from config.Dir_Path import BASE_PATH

class BaiduTest(unittest.TestCase):
    def setUp(self): #测试准备工作
        self.driver = webdriver.Chrome() #加载驱动
        self.driver.implicitly_wait(30) #隐式等待
        self.base_url = "http://www.baidu.com" #url

    def test_baidu(self): #测试用例
        self.driver.get(self.base_url + "/") #get发送url
        self.driver.find_element_by_id("kw").clear() #清空
        self.driver.find_element_by_id("kw").send_keys("python") #搜索shuzf
        self.driver.find_element_by_id("su").click() #点击
        time.sleep(2)#休息5s
        if not os.path.exists('report/image/'):  os.makedirs('report/image/')  # 判断当前路径是否存在,没有则创建文件夹
        pic_path = 'report/image/' + time.strftime("%Y-%m-%d-%H_%M_%S") + '.png'
        self.driver.save_screenshot(pic_path)  # 生成图片
        print(os.path.join(BASE_PATH,pic_path))
        self.assertEqual(self.driver.title,"python_百度搜索",)  # 断言判断是否相等

    def tearDown(self): #释放资源
        self.driver.quit() #退出

if __name__ == "__main__":
    suite= unittest.TestSuite() #构造测试套件
    suite.addTest(BaiduTest("test_baidu")) #添加测试用例
    file_name = "report/html/" + time.strftime("%Y-%m-%d-%H_%M_%S")+ ".html"
    with open(file_name, 'wb') as f:
        HTMLTestRunner(stream=f, title='API Test Report', description='Test details').run(suite) # 执行套件
        f.close()
复制代码

 

2,使用命令行执行文件

  >python demo.py

posted @   南方的墙  阅读(344)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示