Selenium 2自动化测试实战36(更易读的测试报告)
Posted rita-lj
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Selenium 2自动化测试实战36(更易读的测试报告)相关的知识,希望对你有一定的参考价值。
一、更易读的测试报告
1.知识点:python的注释。
1.一种叫comment,为普通的注释
2.另一种叫doc string,用于函数,类和方法的描述。
在类或方法的下方,通过三引号(""" """或‘‘‘ ‘‘‘)来添加doc string类型的注释,这类注释在平时调用的时候不显示,可以通过help()方法来查看类或方法的这种注释。
htmlTestRunner可以读取doc string类型的注释,所以,我们只需要给测试类或方法添加这种类型的注释即可。如下图所示
生成的测试报告注释如下图所示
2.测试报告文件名
在报告名称中加入当前时间,这样生成的报告既不会重叠,又能更清晰的知道报告生成的时间。
python的time模块中提供了丰富的关于时间操作的方法,可以利用这些方法来完成这个需求。
time.time():获取当前时间戳
time.ctime():当前时间的字符串形式
time.localtime():当前时间的struct_time形式
time.strftime():用来获得当前时间,可以将时间格式化为字符串。
通过strftime()方法以指定的格式获取当前时间,将当前时间的字符串赋值给now变量。将now通过加号(+)拼接到生成的测试报告的文件名中。再次运行测试用例,生成的测试报告文件名如下图所示
3.项目集成测试报告
目前HTMLTestRunner只是针对单个测试文件生成测试报告,最终我们是希望将它集成到runtest.py文件中,使其作用于整个测试项目。
#runtest.py
#coding:utf-8
import unittest
import time
from HTMLTestRunner import HTMLTestRunner
if __name__=="__main__":
#按照一定格式获取当前时间
now=time.strftime("%Y-%m-%d %H_%M_%S")
#指定测试用例为当前文件夹下的test_case目录
test_dir=‘./test_case‘
discover=unittest.defaultTestLoader.discover(test_dir,pattern=‘test_*.py‘)
filename=test_dir+‘/‘+now+"result.html"
fp=open(filename,‘wb‘)
#定义测试报告
runner=HTMLTestRunner(stream=fp,title=u‘搜索测试报告‘,description=u‘用例执行情况:‘)
# 运行测试用例
runner.run(discover)
fp.close()
生成的HTML测试报告如下图所示
以上是关于Selenium 2自动化测试实战36(更易读的测试报告)的主要内容,如果未能解决你的问题,请参考以下文章
定义类(和嵌套类)成员函数的更好/更整洁/更易读的方法? [复制]