Selenium(Python)生成Html測試報告


由於Python3已經不支持HTMLTestRunner了,

無論是PyCharm還是pip都無法安裝成功,

所以只能去

http://tungwaiyip.info/software/HTMLTestRunner_0_8_2/HTMLTestRunner.py

手動下載:

在網頁空白處點擊鼠標右鍵,

選擇另存為:

 

為了適配Python3,

作了部分修改,

修改過后的文件我會在后面的博客中貼出來,

把HTMLTestRunner.py文件放到Python3安裝目錄下的Lib文件夾里面;

還有一個地方需要注意的是,

Python3已經不支持file方法了,

應該用open!

 

新建TestCase.py:

 

import unittest
from selenium import webdriver
from selenium.webdriver.support.wait import WebDriverWait


class SearchTestCase(unittest.TestCase):

def setUp(self):
self.driver = webdriver.Firefox()
self.driver.maximize_window()
self.driver.get("https://www.baidu.com/")
self.driver.implicitly_wait(15)

def test_searchChina(self):
"""百度搜索中國的測試用例"""
self.driver.find_element_by_xpath(".//*[@id='kw']").send_keys("中國")
self.driver.find_element_by_xpath(".//*[@id='su']").click()

WebDriverWait(self.driver, 15).until(lambda x: x.find_element_by_xpath(".//*[@id='1']/h3/a"))
result = self.driver.find_element_by_xpath(".//*[@id='1']/h3/a").text

self.assertEqual(result, "中國_百度百科")

def tearDown(self):
self.driver.close()
self.driver.quit()

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

 

然后再新建HtmlReport.py:

 

import HTMLTestRunner
import unittest
from time import strftime, localtime, time

from TestCase import SearchTestCase


suite = unittest.TestSuite()
# 獲取TestSuite的實例對象
suite.addTest(SearchTestCase("test_searchChina"))
# 把測試用例添加到測試容器中

now = strftime("%Y-%m-%M-%H_%M_%S", localtime(time()))
# 獲取當前時間
filename = now + "test.html"
# 文件名

fp = open(filename, "wb")
# 以二進制的方式打開文件並寫入結果
runner = HTMLTestRunner.HTMLTestRunner(
stream=fp,
verbosity=2,
title="測試報告的標題",
description="測試報告的詳情")

runner.run(suite)

fp.close()

 

運行一把,

會在當前工程的目錄下生成html文件,

打開之:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM