在之前的案例中,我們完成了自劢化測試的基本能力,也能完成測試的執行工作,但 是還沒有做到將測試的結果以報表的形式輸出,接下來,在之前的測試基礎上加上測試報告的輸出。
HTMLTestRunner 介紹
HTMLTestRunner 是 python 標准庫 unittest 的擴展,可以生成一個直觀的測試報告。 在使用之前需要將 HTMLTestRunner.py 文件放如到 python 的安裝目弽下,例如我的 就是 c:\Python27 目錄。
生成測試報告
下我們在之前的 LMD 登陸測試的腳本中先來看看 HTMLTestRunner 是如何使用的,將 login_auto.py 的內容修改如下:
#coding=utf-8
__author__ = 'Administrator'
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions
import time
import unittest
import HTMLTestRunner
class login_test_case(unittest.TestCase):
def setUp(self):
self.driver = webdriver.Firefox()
self.driver.maximize_window()
self.driver.get('http://www.chuangyijia.com/login')
def tearDown(self):
self.driver.quit()
def test_login(self):
self.driver.find_element_by_id('email').send_keys('[email protected]
qq.com')
self.driver.find_element_by_id('pwd').send_keys('a654321')
self.driver.find_element_by_id('submit').click()
#self.driver.implicitly_wait(5)
time.sleep(3)
WebDriverWait(self.driver,30).until(expected_conditions.visib
ility_of_element_located((By.CSS_SELECTOR,'.logo')))
print self.driver.title
is_title = expected_conditions.title_is(u'首頁-創意家')
self.assertTrue(is_title(self.driver))
if __name__ == '__main__':
suite = unittest.TestSuite()
suite.addTest(login_test_case("test_login"))
Report_file =
u"H:\\pydj\\Lmd_auto_test\\Report\\Result.html"
Rf = file(Report_file,'wb')
Case_run =
HTMLTestRunner.HTMLTestRunner(stream=Rf,title=u'LMD 登陸測試
',description=u"測試報告輸出")
Case_run.run(suite)
上面的代碼叧是在原有基礎上做了修改,加入了 import HTMLTestRunner 這句,還有 後面的
suite = unittest.TestSuite()
創建一個測試套對象
suite.addTest(login_test_case("test_login"))
將登陸的測試用例添加到測試套中
Report_file = u"H:\\pydj\\Lmd_auto_test\\Report\\Result.html"
設置測試報告輸出的位置及文件名
49
Rf = file(Report_file,'wb')
使用 python 標准庫 file 打開測試報告文件,wb 是以二進制寫的模式
打開。
Case_run=HTMLTestRunner.HTMLTestRunner(stream=Rf,title=u'LMD
登陸測試',description=u"測試報告輸出")
創建一個 HTMLTestRunner 的對象,並且將上面打開的用於輸出測試報
告的對象傳入,title 是 html 報告頁面的 title,description 對測試
報告的描述
Case_run.run(suite)
開始運行測試套
最後感謝每一個認真閱讀我文章的人,下面這個網盤鏈接也是我費了幾天時間整理的非常全面的,希望也能幫助到有需要的你!
這些資料,對於想轉行做【軟件測試】的朋友來說應該是最全面最完整的備戰倉庫,這個倉庫也陪伴我走過了最艱難的路程,希望也能幫助到你!凡事要趁早,特別是技術行業,一定要提升技術功底。希望對大家有所幫助……
如果你不想一個人野蠻生長,找不到系統的資料,問題得不到幫助,堅持幾天便放棄的感受的話,可以點擊下方小卡片加入我們群,大家可以一起討論交流,裡面會有各種軟件測試資料和技術交流。
點擊文末小卡片領取敲字不易,如果此文章對你有幫助的話,點個贊收個藏來個關注,給作者一個鼓勵。也方便你下次能夠快速查找。
零基礎轉行軟件測試:25天從零基礎轉行到入職軟件測試崗,今天學完,明天就業。【包括功能/接口/自動化/python自動化測試/性能/測試開發】
自動化測試進階:2022B站首推超詳細python自動化軟件測試實戰教程,備戰金三銀四跳槽季,進階學完暴漲20K