測試報告
生成HTML測試報告
- 下載HTMLTestRunner.py包
- 下載地址:http://tungwaiyip.info/software/HTMLTestRunner.html
-
下載后,把HTMLTestRunner.py 文件復制到Python 安裝路徑下的lib文件夾中即可。
- 引入包的方式:from HTMLTestRunner import HTMLTestRunner
-
在python3中用HTMLTestRunner.py報importError“:No module named 'StringIO'解決辦法
原因是官網的是python2語法寫的,看官手動把官網的HTMLTestRunner.py改成python3的語法。
修改內容:第94行,將import StringIO修改成import io 第539行,將self.outputBuffer = StringIO.StringIO()修改成self.outputBuffer = io.StringIO() 第642行,將if not rmap.has_key(cls):修改成if not cls in rmap:
第631行,將print >> sys.stderr, '\nTime Elapsed: %s' % (self.stopTime-self.startTime)修改成print(sys.stderr, '\nTime Elapsed: %s' % (self.stopTime-self.startTime))
第766行,將uo = o.decode('latin-1')修改成uo = e 第772行,將ue = e.decode('latin-1')修改成ue = e
- 以百度關鍵字搜索為例
from selenium import webdriver#導入瀏覽器的驅動包 import time#導入時間包 import unittest#導入單元測試包 from HTMLTestRunner import HTMLTestRunner#導入生成HTML報告的包 class Baidu(unittest.TestCase): def test_baidu_search(self): driver=webdriver.Firefox() driver.maximize_window() driver.get('http://www.baidu.com') driver.find_element_by_id('kw').send_keys('selenium') driver.find_element_by_id('su').click() time.sleep(3) driver.quit() testunit=unittest.TestSuite()#生成單元測試流程 testunit.addTest(Baidu("test_baidu_search"))#加載測試用例 fp=open('D:\\test\\unittest.html','wb')#創建測試報告,以寫的方式存入某個路徑 runner=HTMLTestRunner( stream=fp, title="百度搜索測試", description="用例執行情況:" ) runner.run(testunit) fp.close()