最近就是有看到說乙個完整的自動化指令碼是什麼樣子,這是我學習且實操了一遍後,進行的一些總結,有不完善的地方,希望大家多多指教。
在寫自動化指令碼之前,需要明確手動指令碼的步驟,然後去拆分到具體沒乙個步驟做什麼,考慮好了之後,才開始動手去寫指令碼。我把這個測試場景分拆如下步驟:
1) 啟動後瀏覽器,這裡我們用chrome
3) 定位搜尋輸入框,記錄下輸入框元素的xpath表示式://*[@id='kw']
6) 在搜尋結果列表去判斷是否存在selenium官網這個鏈結。
7) 退出瀏覽器,結束測試。
如果你沒有安裝chrome,那就用firefox。
1) 桌面新建乙個記事本,命名並儲存為firstscript.py
2) 輸入如下**片段到firstscript.py,儲存
3) 開啟cmd視窗,切換到桌面路徑下,然後通過python firstscript.py 來執行指令碼。
firstscript.py指令碼如下
# coding=utf-8import time
from selenium import webdriver
driver = webdriver.chrome() # 開啟chrome,如果沒有安裝chrome,換成webdriver.firefox()
driver.maximize_window() # 最大化瀏覽器視窗
driver.implicitly_wait(8) # 設定隱式時間等待
driver.find_element_by_xpath("//*[@id='kw']").send_keys("selenium") # 搜尋輸入框輸入selenium
# 匯入time模組,等待2秒
time.sleep(2)
# 這裡通過元素xpath表示式來確定該元素顯示在結果列表,從而判斷selenium官網這個鏈結顯示在結果列表。
# 這裡採用了相對元素定位方法/../
# 通過selenium方法is_displayed() 來判斷我們的目標元素是否在頁面顯示。
driver.find_element_by_xpath("//div/h3/a[text()='官網']/../a/em[text()='selenium']").is_displayed()
driver.quit()
第二種斷言寫法:
# coding=utf-8import time
from selenium import webdriver
driver = webdriver.chrome()
driver.maximize_window()
driver.implicitly_wait(8)
driver.get("")
driver.find_element_by_xpath("//*[@id='kw']").send_keys("selenium")
driver.find_element_by_xpath("//*[@id='su']").click()
time.sleep(2)
# 第二個判斷方法
ele_string = driver.find_element_by_xpath("//div/h3/a[text()='官網']/../a").text
if (ele_string == u"selenium - web browser automation"):
print "測試成功,結果和預期結果匹配!"
driver.quit()
更加精確的回答與答覆可以加我們1085991341。
這裡只利用 兩個等號(==)來判斷兩個字串是否完全相同,有時候我們還需要對得到的字串進行切割操作,才能進行去匹配,以後再介紹字串切割處理在自動化測試結果判斷中的使用。
總結:自動化測試最難的在於如何去寫斷言,如何判斷測試結果是否通過。
建議: 以上**指令碼舉例,最好是去一行一行抄寫,不要直接複製、黏貼到記事本中。因為,在書寫指令碼過程,肯定會犯一些語法和輸入錯誤,在除錯指令碼過程,通過觀察報錯資訊,直到解決問題,可以順利執行指令碼,得到和收穫就會很多。
記第乙個完整的自動化測試指令碼
最近就是有看到說乙個完整的自動化指令碼是什麼樣子,這是我學習且實操了一遍後,進行的一些總結,有不完善的地方,希望大家多多指教。在寫自動化指令碼之前,需要明確手動指令碼的步驟,然後去拆分到具體沒乙個步驟做什麼,考慮好了之後,才開始動手去寫指令碼。我把這個測試場景分拆如下步驟 1 啟動後瀏覽器,這裡我們...
第乙個自動化指令碼
第乙個自動化指令碼 安裝python比較簡單,我是在windows上進行操作的,在之前先做了一些python基礎語法的儲備。現在來進行python的安裝 2 根據作業系統選擇python的版本,我的是windows系統64位,所以選擇的是 4 看資料上說需要再進行安裝pip和setuptools 由...
第乙個自動化指令碼
coding utf 8 python2需要,python3已預設 from selenium import webdriver 匯入selenium的webdriver包只有匯入我們才能使用webdriver api 獲得瀏覽器物件後,通過get方法,可以向瀏覽器傳送 driver.find el...