Selenium是一個Web測試工具,經過直接控制瀏覽器來實現Web測試,與真實用戶操做徹底一致。Selenium目前支持IE、Firefox、Chrome、Safari、Opera等瀏覽器,Selenium支持主流的操做系統平臺-Windows、Linux、Mac等,Selenium支持Java、Ruby、Python、Perl、PHP、C#等編程語言進行制定測試。 Selenium IDE還能夠錄製用戶的基本操做,用於方便生產測試案例,能夠在隨後的測試過程當中回放。python
下面是一個簡單的例子,用於打開百度並進行搜索web
from selenium import Webdriver from selenium.webdriver.common.keys import Keys #啓動web driver server,打開IE瀏覽器 ie = Webdriver.Ie() #打開百度首頁 ie.get('http://www.baidu.com') #獲取搜索輸入框 kw = ie.get_element_by_id('kw') #在輸入框輸入selenium,並回車 kw.send_keys('selenium'+Keys.RETURN) #ie.close()
selenium其實是由服務端和客戶端兩部分組成的,服務端必須與被調用瀏覽器在同一主機,服務端經過webdriver控制瀏覽器的行爲,客戶端能夠與服務端位於不一樣主機,只要網絡可以訪問到便可。客戶端經過http協議(restful)與服務端通訊,將控制命令發送給服務端。 正由於客戶端經過http協議與服務端交互,因此客戶端能夠使用任意支持tcp/ip的編程語言實現。編程
from selenium.webdriver.remote.webdriver import Webdriver as RemoteWebDriver from selenium.webdriver.common.keys import Keys #啓動web driver server,打開IE瀏覽器 browser = RemoteWebdriver('http://remoteHost:remotePort') #打開百度首頁 browser .get('http://www.baidu.com') #獲取搜索輸入框 kw = browser .get_element_by_id('kw') #在輸入框輸入selenium,並回車 kw.send_keys('selenium'+Keys.RETURN) #browser.close()