Python+Selenium:自动化报告生成

1.下载并安装HTMLTestRunner.py

(1) 下载:原始版本下载地址(支持python2.0): http://tungwaiyip.info/software/HTMLTestRunner.html
(2) 将HTMLTestRunner.py文件拷贝到Python\lib目录下
在这里插入图片描述
(3) 验证:能正常导入即可

2.代码实现测试报告实例:
(1) 创建testRuner.py,代码实例如下:

import time
import framework.public_functions as pf
import os
import HTMLTestRunner

#调用createTestSuite()方法
testunit = pf.create_test_suite()

#定义log日志文件的目录和名称
now = time.strftime('%Y-%m-%d_%H_%M_%S', time.localtime(time.time()))

#定义HTML报告的目录和名称
filePath = os.path.join(os.path.dirname(__file__), '../result/report/').replace('\\', '/')

fileName = filePath + now + "_result.html"
fp = open(fileName, "wb")

#设置HTML报告的title和description信息
runner = HTMLTestRunner.HTMLTestRunner(
    stream = fp,
    title = u'RDIS测试报告',
    description = u'用例执行情况:')

#启动测试套件
runner.run(testunit)
fp.close()

(2) 创建测试组套函数:create_test_suite()

  • TestLoader 类中提供的discover()方法可以自动识别测试用例
  • discover(start_dir,pattern=‘test*.py’,top_level_dir= None)
    找到指定目录下所有测试模块,并可递归查到子目录下的测试模块,只有匹配到文件名时才加载 start_dir:要测试的模块名或测试用例目录
    pattern=‘test*.py’:表示用例文件名的匹配原则。此处匹配以“test”开头的.py 类型的文件,* 表示任意多个字符
    top_level_dir= None 测试模块的顶层目录,如果没有顶层目录,默认为None

代码实例如下:

#region 其它操作
# 创建测试套件
def create_test_suite():
    # 测试用例存放位置
    test_case_dir = os.path.join(os.path.dirname(__file__), '../testuits').replace('\\', '/')
    #test_case_dir = 'D:\\Work\\PythonAutomation\\RDIS\\testuits\\'
    test_unit = unittest.TestSuite()

    # discover 方法定义
    test_suites = unittest.defaultTestLoader.discover(test_case_dir, pattern='test*.py', top_level_dir=None)

    # discover 方法筛选出来的用例,循环添加到测试套件中
    for test_suite in test_suites:
        for test_case in test_suite:
            test_unit.addTests(test_case)
    return test_unit
# endregion

3.查看测试报告
选中报告—右键“Open in Browser”—选择浏览器打开报告
在这里插入图片描述
报告模板:
在这里插入图片描述
4.遇到的问题:

在执行HTMLTestRunner时,报错AttributeError: ‘module’ object has no attribute ‘HTMLTestRunner’ 如图:
在这里插入图片描述
解放方法:重新从官网下载了HTMLTestRunner.py,能正常导入即可。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值