1、HTMLTestRunner介紹
HTMLTestRunner 是 Python 標準庫的 unittest 單元測驗框架的一個擴展,它生成易于使用的 HTML 測驗報告
2、生成測驗報告的步驟
1、創建TestSuite實體
2、通過test_suite.addTest()添加測驗用例
3、創建報告生成后的檔案位置
4、創建報告fs = open(file_path, 'wb')
5、使用HTMLTestRunner.HTMLTestRunner()方法描述測驗報告總概況
6、使用runner.run(test_suite)方法運行最后生成測驗報告
2、豐富LoginCase測驗用例
class TestLoginCase(unittest.TestCase):
""" 用戶登錄測驗 """
username = "1521099989"
password = "wsxcdf"
def setUp(self):
self.driver = webdriver.Chrome()
self.url = "http://mail.163.com/"
# 打開瀏覽器
LoginPage(self.driver).open_browser(self.url)
sleep(1)
def test_login_user_or_pwd_error(self):
"""用戶名或密碼錯誤"""
LoginPage(self.driver).login_operation(self.username, self.password)
try:
self.assertEqual("15210996111", self.username, "用戶名或密碼錯誤")
except AssertionError:
print("用戶名或密碼錯誤")
print("測驗用例成功")
def test_login_username_null(self):
"""用戶名不能為空"""
LoginPage(self.driver).login_operation(self.username, self.password)
try:
self.assertEqual("wssss", self.password, "用戶名不能為空")
except AssertionError:
print("密碼不能為空")
print("測驗用例成功")
def test_login_pwd_null(self):
"""密碼不能為空"""
LoginPage(self.driver).login_operation(self.username, self.password)
try:
self.assertEqual("wssss", self.password, "密碼不能為空")
except AssertionError:
print("密碼不能為空")
print("測驗用例成功")
def tearDown(self):
self.driver.quit()
3、創建生成報告的類
import unittest,time
from src.testcase.TestLoginCase import TestLoginCase
import HTMLTestRunner
class HtmlReport:
# 創建TestSuite的實體
test_suite = unittest.TestSuite()
# 測驗用例加入到測驗套件中
test_suite.addTest(TestLoginCase("test_login_user_or_pwd_error"))
test_suite.addTest(TestLoginCase("test_login_username_null"))
test_suite.addTest(TestLoginCase("test_login_pwd_null"))
# 創建報告輸入的檔案位置
now_time = time.strftime("%Y%m%d-%H%M%S")
file_path = "D:\\Programs\\pythonProject\\src\\report\\report_html\\" + now_time + ".html"
fs = open(file_path, 'wb')
'''
stream=fs:指定測驗報告檔案
title:標題
description:描述
'''
runner = HTMLTestRunner.HTMLTestRunner(
stream=fs,
title="126郵箱測驗報告",
description="用例執行情況,如下圖所示:"
)
# 執行測驗用例
runner.run(test_suite)
4、運行HtmlReport類,生成HTMLTestRunner測驗報告

1、報告中紅框資訊的顯示,是因為TestLoginCase中使用了"""的注釋,使用"""注釋會在生成報告的時候自動將注釋資訊注入,注意具體寫法和格式
2、報告中最上面的總概述,就是HTMLTestRunner()方法的描述
5、總結
對有些地方理解不是很透徹,如果有不合理的地方,希望能夠得到指正,謝謝!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/182480.html
標籤:其他
上一篇:權威指南:Serverless 未來十年發展解讀 — 伯克利分校實驗室分享(下)
下一篇:Top建站選哪家
