2011-08-08 30 views
1

Selenium如何命令瀏覽器? 我知道硒代理的請求,並在響應中注入硒核心js api。但「點擊」或任何其他命令如何到達瀏覽器?換句話說,selenium如何調用在瀏覽器頁面中注入的selenium核心api?Selenium RC如何與瀏覽器通訊

回答

2

Selenium建議使用WebDriver替換遠程控制功能。 TMK,舊的代碼將Javascript注入瀏覽器並通過它進行通信。 WebDriver代碼爲每個瀏覽器使用本地API。

「Selenium-WebDriver使用每個瀏覽器對 自動化的本地支持直接調用瀏覽器。」經由http://seleniumhq.org/docs/03_webdriver.html#selenium-2-0-features

1

RC運行在瀏覽器的請求環(在硒窗口或框架),並且RC服務器充當客戶端和瀏覽器之間的轉發代理。這裏是序列:

  1. 測試腳本調用Selenium.Click('SUBMIT')
  2. 客戶端發出一個HTTP請求,告訴服務器「下次瀏覽器詢問,告訴它點擊'提交'按鈕」。
  3. 瀏覽器可能已經有一個HTTP請求等待響應,但如果沒有,它會很快。
  4. 當瀏覽器發送HTTP請求時,服務器迴應「單擊'提交'按鈕」。
  5. 瀏覽器按照它的要求進行操作,並向服務器發送另一個HTTP請求,指示命令成功。
  6. 服務器以「OK」響應響應客戶端的現有HTTP請求。
  7. Click()例程返回到腳本。
相關問題