大发pk10官方网站_《一头扎进》系列之Python+Selenium框架实战篇7

  • 时间:
  • 浏览:1

1. 简介

  截止到上一篇文章为止,框架基本完正搭建完成。这样今天亲戚亲戚朋友要做这人呢????聪明如你的小伙伴已经 是童鞋一定已经 猜到了,都测试完了,当然是要生成一份高端大气上档次的测试报告了。没错的,今天宏哥就带领亲戚亲戚朋友将这部分内容也集成到这人框架中。本文来介绍怎样生成自动化测试报告,前面文章尾部提到了利用HTMLTestRunner.py来生成自动化测试报告。关于HTMLTestRunner不不要 介绍,只前要知道是另三个 多能生成另三个 多HTML格式的网页报告就可不前要,所以的已经 你很糙感兴趣可不前我应该 本人去搜索查询资料。亲戚亲戚朋友前要在宏哥前边介绍的自动化框架底下继承另三个 多报告输出,直接来看看效果。

2. 测试报告效果

2.1 测试报告文件

  亲戚亲戚朋友从下图中,可不前要清楚地就看在test_report文件夹下生成的测试报告

2.2 浏览器预览效果

  已经 生成的是.html文件,所以这里用浏览器打开亲戚亲戚朋友看一下效果如下图:

2.3 实现

  这里亲戚亲戚朋友报告输出代码写到了,负责执行测试套件TestRunner.py这人文件。相关代码如下:

TestRunner.py

2.3.1 代码实现:

2.3.2 参考代码:
# -*- coding:utf-8 -*-

# 1.先设置编码,utf-8可支持中英文,如上,一般放到第一行

# 2.注释:包括记录创建时间,创建人,项目名称。
'''
Created on 2019-12-25
@author: 北京-宏哥   QQ交流群:705269076
Project: 《一头扎进》系列之Python+Selenium自动化测试框架实战篇7 - 年底了还没升职加薪,年终奖全靠它了!!!
'''
# 3.导入模块
from automation_framework_demo.testsuits import HTMLTestReportCN
import os
import unittest
import time
from automation_framework_demo.framework.SendEmail import SendMail

# 设置报告文件保存路径
report_path = os.path.dirname(os.path.abspath('.')) + '/test_report/'

print('report_path'+ report_path)
# 获取系统当前时间
now = time.strftime("%Y-%m-%d-%H_%M_%S", time.localtime(time.time()))

# 设置报告名称格式
HtmlFile = report_path + now + "HTMLtemplate.html"
#fp = file(HtmlFile, "wb")
fp = open(HtmlFile, "wb")

#用例路径
case_path = os.path.join(os.getcwd(), '')
print('case_path',case_path)


# 构建suite
# suite = unittest.TestLoader().discover(case_path, "test_baidu_search.py", top_level_dir=None)
suite = unittest.TestLoader().discover(case_path, "baidu_search1.py", top_level_dir=None)

if __name__ == '__main__':
    #初始化另三个

多HTMLTestRunner实例对象,用来生成报告
    runner = HTMLTestReportCN.HTMLTestRunner(stream=fp, title=u"Python+Selenium自动化测试框架实战篇7项目演示测试报告", description=u"用例测试情况汇报")
    #已经

刚开始英文执行测试套件
    runner.run(suite)
    # runner = unittest.TextTestRunner()
    # runner.run(suite)
    fp.close()
2.3.3 运行结果:

  运行代码后,控制台打印如下图的结果

2.3.4 测试报告预览

  测试报告用浏览器打开截图,在你项目文件路径下,找到这人HTML的报告,用本地浏览器打开。

  怎样生成自动化测试报告就介绍到这里。

3. 测试报告模板插件

  宏哥这里为了方便,直接将测试报告的模板插件,直接放到了testsuits的文件下,如图:

  已经 有洁癖的小伙伴已经 童鞋们,可不前我应该 本人建另三个 多文件夹专门来存储这人模板插件也可不前要的,所以暂且忘记了最重要的一根绳子 所以将其导入,所以已经 会报找必须的错误哦!

4. 导入测试报告模板插件

  怎样导入?我我觉得很简单的,就像python导入所以模块一样。例如宏哥这里的导入最好的土办法如下:

  宏哥总结如下:

from  文件夹路径  import 插件名字.py

5. 执行所有测试用例

  除了上一篇那种找到文件夹,执行所有测试用例,亲戚亲戚朋友还有别的最好的土办法执行所有测试用例吗?当然有,所以对测试用例的名字的命名有要求,我我觉得所以是硬性要求,只不过是为了底下亲戚亲戚朋友的正则表达式好写,这里命名就规范所以。

5.1 命名规则:

  所有测试用例的名字都以test开头,例如:test_login.py。

5.2 正则表达式:

  正则表达式:test*.py

5.3 代码实现:

5.4 参考代码:

# 构建suite
# suite = unittest.TestLoader().discover(case_path, "test_baidu_search.py", top_level_dir=None)
suite = unittest.TestLoader().discover(case_path, "test*.py", top_level_dir=None)

6. 小结

  好了,今天的分享就到这里吧!!!谢谢各位的耐心阅读。有这人的现象加群交流讨论!!!

哎呀!!!忘记了,最后祝亲戚亲戚朋友圣诞节快乐。。Merry Christmas!!!

您的肯定所以进步的动力。已经 你感觉还不错,就请鼓励一下吧!记得随手点波  推荐  暂且忘记哦!!!

别忘了点 推荐 留下您来过的痕迹