您的位置:首页 > 编程语言 > Python开发

python单元测试同时生成自动化测试报告

2017-11-30 11:13 501 查看
#-*- coding:utf-8 -*-
# 导入单元测试包
import unittest

# 定义类  继承unittest里面的TestCase
class Login(unittest.TestCase):

# 所有的测试用例执行之前的方法
@classmethod
def setUpClass(cls):

print "setUpClass"

pass
#         每一条测试用例执行之前执行的方法
def setUp(self):

print "setUp"

pass
#       每一条测试用例执行之后执行的方法
def tearDown(self):

print "tearDown"

pass
#         所有测试用例执行之后执行的方法
@classmethod
def tearDownClass(cls):

print "tearDownClass"

pass
#         测试用例是以test为开头的方法
def test_us_pw(self):

print "test_us_pw"

pass
        def test_us_not_pw(self):

print "test_us_not_pw"

pass
#         测试用例的执行顺序是根据ACSII码执行的 从 0 - 9 A-Z a -z

# # 运行单元测试 方法一
# if __name__ == '__main__':
#
#     unittest.main()

# 一般在企业里面通过运行测试套件来运行单元测试 suit TestSuit , 用来装单元测试,可以装N个单元测试
#-*- coding:utf-8 -*-

# 导入单元测试包
首先使用自动化测试报告,需要安装自动化测试报告的软件,HTMLTestRunner,这个文件需要放到你安装的Python环境下面去,如果你安装的是python2.7那就放在 python27 下面的lib里面,如果你安装的是Python36,那就放在Python36下面的lib里面,自动化测试报告的下载路径是http://tungwaiyip.info/software/HTMLTestRunner.html,感谢写这个报告的人
os是Python自带的包,用来获取运行的时候,当前的路径,我们将生成的自动化测试报告放在了当前套件类里面,
测试套件可以同时运行多个单元测试,有限就是低耦合,我们可以同时很多台电脑来运行单元测试,这样提高测试效率,节约测试时间
import unittest
# 导入登陆模块
import loginunittest
# 导入自动化测试报告
import HTMLTestRunner
# 导入os包
import os

# 实例化套件
suit = unittest.TestSuite()

# 将单元测试加入到测试套件里面 注意我们这里可以加N个
suit.addTest(unittest.makeSuite(loginunittest.Login))

# 获取当前路径
files = os.getcwd() +"/qiezzi.html"
# 指定以二进制的方式写入  wb 以二进制的方式写入 rb 以二进制的方式读取 rb+ 以二进制的方式既可以读又可以写
filename = open(files,'wb')

# 通过自动化测试报告运行他
runner = HTMLTestRunner.HTMLTestRunner(stream=filename,title=u"茄子医生",description=u"茄子登陆详情")

runner.run(suit)
在我们写自动化脚本的时候,一般都是一个模块写错一个单元测试,或者一个场景写成一个单元测试,最后将所有的单元测试加入到测试套件里面,这样来实现低耦合,比如我们可能测试用例比较多,需要运行两个小时,我们可以通过两台电脑来运行不同的单元测试,这样就可以将时间缩短为一个小时,来提高我的测试效率
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: