testsuits:案例執行
創建baidu_search1.py文件,這里會展示兩種執行方式,一種是直接調用base_page中封裝好的常用操作方法,另外一種是先調用baidu_homepage.py,通過baidu_homepage.py進行處理,再執行對應的案例,詳見代碼中的注釋。代碼如下:
# coding=utf-8 import time import unittest from framework.browser_engine import BrowserEngine from pageobjects.baidu_homepage import HomePage from framework.base_page import BasePage class BaiduSearch(unittest.TestCase): def setUp(self): """ 測試固件的setUp()的代碼,主要是測試的前提准備工作 :return: """ browse = BrowserEngine(self) self.driver = browse.open_browser(self) def tearDown(self): """ 測試結束后的操作,這里基本上都是關閉瀏覽器 :return: """ self.driver.quit() def test_baidu_search(self): """ 這里一定要test開頭,把測試邏輯代碼封裝到一個test開頭的方法里。
這里先調用homepage類,通過homepage中的方法進行案例執行,詳見代碼 :return: """ homepage = HomePage(self.driver) homepage.type_search('selenium') # 調用頁面對象中的方法 homepage.send_submit_btn() # 調用頁面對象類中的點擊搜索按鈕方法 time.sleep(2) homepage.get_windows_img() # 調用基類截圖方法 try: assert 'selenium' in homepage.get_page_title() # 調用頁面對象繼承基類中的獲取頁面標題方法 print ('Test Pass.') except Exception as e: print ('Test Fail.', format(e)) """ 這個是直接調用base_page類,元素編寫格式為:id=>xx ,因為在base_page中用=>對元素進行切割,具體返回去看一下base_page中的內容
return:
""" def test_baidu_search2(self): test = BasePage(self.driver) test.type("id=>kw",'selenium') test.click("xpath=>//*[@id='su']") time.sleep(1) test.click("xpath=>/html/body/div[1]/div[5]/div[1]/div[3]/div[2]/div[1]/h3/a") if __name__ == '__main__': unittest.main()