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、執行結果
對於執行不通過的用例可以點擊錯誤二字查看詳情