http://www.testclass.net/ 測試教程網,專業的selenium 學習網站。
本節知識點:
- 列印URL
- 將瀏覽器最大化
- 設定瀏覽器固定寬、高
- 操控瀏覽器前進、後退
列印URL
上一節講到,可以將瀏覽器的title列印出來,這裡再講個簡單的,把當前URL列印出來。其實也沒啥大用,可以做個湊數的用例。
#coding=utf-8
from selenium import webdriver
import time
browser = webdriver.Firefox()
url= 'http://www.baidu.com'
#通過get方法獲取當前URL列印
print "now access %s" %(url)
browser.get(url)
time.sleep(2)
browser.find_element_by_id("kw").send_keys("selenium")
browser.find_element_by_id("su").click()
time.sleep(3)
browser.quit()
其實,我們可以把這使用者登入成功後的URL列印,用於驗證使用者登入成功。
又或者,我們列印其它資訊,比如,一般的登入成功頁會出現“歡迎+使用者名稱”,可以將這個資訊列印表明使用者登入成功。(如何實現,你自己琢磨一下吧~!)
將瀏覽器最大化
我們知道呼叫啟動的瀏覽器不是全屏的,這樣不會影響指令碼的執行,但是有時候會影響我們“觀看”指令碼的執行。
#coding=utf-8
from selenium import webdriver
import time
browser = webdriver.Firefox()
browser.get("http://www.baidu.com")
time.sleep(2)
print "瀏覽器最大化"
browser.maximize_window() #將瀏覽器最大化顯示
time.sleep(2)
browser.find_element_by_id("kw").send_keys("selenium")
browser.find_element_by_id("su").click()
time.sleep(3)
browser.quit()
設定瀏覽器固定寬、高
最大化還是不夠靈活,能不能隨意的設定瀏覽的寬、高顯示?當然是可以的。
#coding=utf-8
from selenium import webdriver
import time
browser = webdriver.Firefox()
browser.get("http://m.mail.10086.cn")
time.sleep(2)
print "設定瀏覽器寬480、高800顯示"
browser.set_window_size(480, 800) #引數數字為畫素點
time.sleep(3)
browser.quit()
這個需求也還是有的,比如我們通過PC瀏覽器在訪問一下手機網站時,調整瀏覽器為手機螢幕的寬、高,容易發現一些顯示問題。(上面的手機郵箱網站就是筆者測試過的一個產品)
操控瀏覽器前進、後退
瀏覽器上有一個後退、前進按鈕,對於瀏覽網頁的人是比較方便的;對於做web自動化測試的同學來說應該算是一個比較難模擬的問題;其實很簡單,下面看看python的實現方式
#coding=utf-8
from selenium import webdriver
import time
browser = webdriver.Firefox()
#訪問百度首頁
first_url= 'http://www.baidu.com'
print "now access %s" %(first_url)
browser.get(first_url)
time.sleep(2)
#訪問新聞頁面
second_url='http://news.baidu.com'
print "now access %s" %(second_url)
browser.get(second_url)
time.sleep(2)
#返回(後退)到百度首頁
print "back to %s "%(first_url)
browser.back()
time.sleep(1)
#前進到新聞頁
print "forward to %s"%(second_url)
browser.forward()
time.sleep(2)
browser.quit()
為了使過程讓你看得更清晰,在每一步操作上都加了print 和sleep 。
說實話,這兩個功能平時不太常用,所能想到的場景就是幾個頁面來回跳轉,但又不想用get url的情況下。
--------------------------
學習更多selenium 內容: