selenium學習筆記(HTMLTestRunner測試報告)


之前提到selenium加入unittest框架、可以引入HTMLTestRunner擴展、以此來生成測試報告

首先是分享下載的百度雲地址

http://pan.baidu.com/s/1pKUItWR

文件名:HTMLTestRunner.py

下載成功后放入相應的python目錄下如: “C:\Python27\Lib”

通過python自帶的IDLE

如果沒有報錯、則說明添加成功

之后是利用之前寫好的博客園登錄腳本

 1 #!/usr/bin/env python
 2 # -*- coding: utf-8 -*-
 3 
 4 import time
 5 import unittest
 6 
 7 from selenium import webdriver
 8 
 9 
10 class TestCnblogs(unittest.TestCase):
11     def setUp(self):
12         print "自動化測試用例執行開始"
13         self.driver = webdriver.Firefox()
14         self.driver.implicitly_wait(30)
15         # 智能等待30S
16         self.Errors = []
17         # 錯誤信息列表
18 
19     def tearDown(self):
20         self.driver.quit()
21         self.assertEqual([], self.Errors)
22         # 檢查錯誤信息列表 若不為空則返回顯示
23         print "自動化測試用例執行結束"
24 
25     def test_cnblogs_login(self):
26         u"""博客園登錄"""
27         driver = self.driver
28         driver.get("http://www.cnblogs.com/")
29         # 測試地址 后面可以添加響應地址
30         driver.find_element_by_css_selector("a[onclick = 'login();return false']").click()
31         driver.find_element_by_css_selector("input[type = 'text']").click()
32         driver.find_element_by_css_selector("input[type = 'text']").send_keys(u"墮落的伊絲莉")
33         # 這里用戶名由於是中文前面要加 u
34         driver.find_element_by_css_selector("input[type = 'password']").click()
35         driver.find_element_by_css_selector("input[type = 'password']").send_keys("xxxxxx")
36         # 輸入密碼、密碼當然按照實際內容添加
37         driver.find_element_by_css_selector("input[type = 'submit']").click()
38         time.sleep(2)
39         driver.close()
40 
41 
42 if __name__ == "__main__":
43     unittest.main()

 

這里存在一個問題、如果把生成測試報告的代碼內容寫在     if __name__ == "__main__":

之下運行成功且不報錯、但是生成的html文件內容為空

兩種解決方式 一種是在cmd里執行腳本

另一種是寫在另一文件加載上面的測試腳本代碼

 1 #!/usr/bin/env python
 2 # -*- coding: utf-8 -*-
 3 
 4 from test_case.cnblogs import TestCnblogs
 5 import HTMLTestRunner
 6 import unittest
 7 
 8 testreport = unittest.TestSuite()
 9 
10 testreport.addTest(TestCnblogs("test_cnblogs_login"))
11 filename = "E:\\work\\python project\\selenium_python\\report.html"
12 fp = file(filename, "wb")
13 runner = HTMLTestRunner.HTMLTestRunner(
14         stream=fp,
15         title=u"博客園測試報告",
16         description=u"用例執行情況:"
17 )
18 runner.run(testreport)

這樣直接在相應的python開發環境下運行即可成功生成測試報告


免責聲明!

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



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