python自動化報告的輸出


1、設計簡單的用例

  

 

2、設計用例

   以TestBaiduLinks.py命名

 1 # coding:utf-8
 2 
 3 from selenium import webdriver
 4 import unittest
 5 
 6 
 7 class BaiduLinks(unittest.TestCase):
 8 
 9     def setUp(self):
10         base_url = 'https://www.baidu.com'
11         self.driver = webdriver.Chrome()
12         self.driver.implicitly_wait(10)
13         self.driver.get(base_url)
14 
15     def tearDown(self):
16         self.driver.close()
17         self.driver.quit()
18 
19     def test_baidu_news(self):
20         u"""百度新聞"""
21         driver = self.driver
22         driver.find_element_by_link_text('新聞').click()
23         self.assertIn(driver.title, u'v百度新聞——全球最大的中文新聞平台')
24 
25     def test_baidu_hao123(self):
26         u"""hao123"""
27         driver = self.driver
28         driver.find_element_by_link_text('hao123').click()
29         self.assertEqual(driver.title, u'hao123_上網從這里開始')
30 
31     def test_baidu_tieba(self):
32         u"""百度貼吧"""
33         driver = self.driver
34         driver.find_element_by_link_text('貼吧').click()
35         # 錯誤的斷言
36         self.assertTrue(driver.find_element_by_link_text('全吧搜索+1'))
37 
38 
39 if __name__ == '__main__':
40     unittest.main()
41     print('百度鏈接跳轉成功')

3、寫執行用例腳本

#  /usr/bin/env python3
# coding:utf-8

"""
Created on 2018-05-30
Project: learning
@Author:wuya
"""

import os, time, unittest
import HTMLTestRunner


report_path = os.getcwd()  # 設置保存報告的路徑,這兒設置的是與執行文件在同一個目錄下
now = time.strftime("%Y-%m-%d %H:%M", time.localtime(time.time())) # 獲取當前時間
title = u"百度頭鏈接測試" # 標題
report_abspath = os.path.join(report_path, title + now + ".html") # 設置報告存放和命名

# 導入用例
def all_case():
    case_path = os.getcwd() # 用例路徑,這兒的用例和執行文件在同一目錄下
    discover = unittest.defaultTestLoader.discover(case_path,
                                                   pattern="Test*.py") # 添加用例,在case_path的路徑下,所有以Test開頭的文件都當做用例文件執行
    print(discover)
    return discover


if __name__ == "__main__":
    fp = open(report_abspath, "wb") # 保存報告文件
    runner = HTMLTestRunner.HTMLTestRunner(stream=fp,
                                           title=title + '',)
    runner.run(all_case()) # 執行用例
    fp.close()

4、執行結果

  結果文檔下載

  

  對於執行不通過的用例可以點擊錯誤二字查看詳情

  


免責聲明!

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



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