1.百度下载安装HTMLTestRunner.py
2整合unittest01.py和taojian.py内容到all_test.py中运行,得出两个文件的结果并生成测试报告。
unittest01.py
import unittest
import time
import HTMLTestRunner
class SuiteSample1(unittest.TestCase):
"""测试套件中添加测试用例"""
def setUp(self) -> None:
self.age = 20
self.name = "lily"
print("start-----")
def tearDown(self) -> None:
print("end-----")
def test_01(self):
u"这是第一个测试用例"
print(1)
self.assertEqual("abc".upper(),"ABC")
def test_02(self):
u"这是姓名核对用例"
print(2)
self.assertEqual(self.name,"tom",msg="名字不一致")
def test_03(self):
u"大小写核对"
print(3)
self.assertTrue("LILY".upper(),msg="名字不是大写")
if __name__ == '__main__':
# 构造测试套件
suite = unittest.TestSuite()
# # 向测试套件中添加测试用例:方法一
suite.addTest(SuiteSample1("test_03"))
suite.addTest(SuiteSample1("test_01"))
suite.addTest(SuiteSample1("test_02"))
# # 向测试套件中添加测试用例:方法二
# tests = [SuiteSample1("test_03"), SuiteSample1("test_01"),SuiteSample1("test_02")]
# suite.addTests(tests)
# 执行测试用例
runner = unittest.TextTestRunner(verbosity=2)
runner.run(suite)
taojian.py
import unittest
from selenium import webdriver
import time
from ddt import ddt,data
@ddt
class Fortest(unittest.TestCase):
# 打开谷歌浏览器,打开百度网页
def setUp(self):
self.driver = webdriver.Chrome()
self.driver.get("http://www.baidu.com")
# 关闭浏览器
def tearDown(self):
time.sleep(3)
self.driver.quit()
# 在百度中查询selenium 和 python
@data('selenium',"python")
def test_1(self,txt):
self.driver.find_element_by_id("kw").send_keys(txt)
time.sleep(1)
self.driver.find_element_by_id("su").click()
print("查询成功")
if __name__ == "__main__":
unittest.main()
all_test.py
import unittest
import HTMLTestRunner
import taojian , unittest01
import time
# 创建测试集合
def create_suite():
print("测试开始")
suite = unittest.TestSuite()
suite.addTest(unittest.makeSuite(taojian.SuiteSample1))
suite.addTest(unittest.makeSuite(unittest01.Fortest))
return suite
if __name__ == "__main__":
suite = create_suite()
file_prefix = time.strftime("%Y-%m-%d %H_%M_%S",time.localtime())
fp = open("D:"+file_prefix+"_result.html","wb")
runner = HTMLTestRunner.HTMLTestRunner(stream=fp,title=u"测试报告",description=u"自动化测试报告详情",verbosity=2)
runner.run(suite)
fp.close()
3运行结束后查看结果如下: