首页 > 编程语言 > 详细

python unittest自动化执行的几种方式

时间:2021-06-04 00:05:09      阅读:21      评论:0      收藏:0      [点我收藏+]

1.命令行执行

1.1执行路径下符合匹配条件的测试用例

  python -m unittest discover -s  +测试用例路径  -p  +测试用的匹配格式

  python -m unittest discover -s D:\yx\project\yx_ydsj\cases -p "*.py"

1.2 执行所在路径下的所有的unittest测试用例

  python -m unittest 

1.3单个测试用例执行

  python +测试用例路径

 

2.代码执行

2.1 使用unittest.main(),执行所在文件中的测试用例

if __name__ == "__main__":
    unittest.main()

2.1使用TestLoader,可以加入任意想执行的测试用例,组合比较方便

if __name__ == "__main__":
    suite1 = unittest.TestLoader().loadTestsFromTestCase(TestLogin("test_login"))
    suite2 = unittest.TestLoader().loadTestsFromTestCase(TestWelMessage("test_addWelcomeMessage"))
    suite = unittest.TestSuite([suite1, suite2])
    unittest.TextTestRunner(verbosity=2).run(suite)

2.2 使用 discover

#coding:utf-8
import time
from Lib import HTMLTestRunner
import unittest
import os
import sys

from cases.Test_yx_Login import TestLogin
from cases.Test_yx_yl_welmessage import TestWelMessage

case_path = os.path.join(os.path.dirname(os.path.realpath("../cases/*")))

#时间
now = time.strftime("-%Y-%m-%d-%H-%M-%S")
report_path = os.path.join(os.getcwd(),"report{0}.html".format(now))


if __name__ == "__main__":
    suite = unittest.defaultTestLoader.discover(case_path,pattern="Test*.py")
    fr = open(report_path,"wb")
    runner = HTMLTestRunner.HTMLTestRunner(stream=fr,title=u"自动化测试报告",description=u"自动化测试用例运行结果如下:")
    runner.run(suite)

 

 2.3使用测试套件,(暂时还没使用,使用的时候再整理)

suite = unittest.TestSuite()
suite.addTest(UTest(test_isupper))
suite.addTest(UTest(test_upper))

 

python unittest自动化执行的几种方式

原文:https://www.cnblogs.com/hqsbrx/p/14846395.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!