2013-10-25 60 views
1

我有使用Selenium 1.0開發的舊測試自動化框架,現在想將我的代碼遷移到WebDriver。有沒有最簡單的方法將Selenium 1.0代碼遷移到WebDriver?

有沒有最簡單的方法來做這種遷移?

我重寫了大部分方法,如類型,點擊,getText,getSelectedLabel,斷言等等。我看到唯一的方法是從頭重新編寫所有方法,我已經開始這個過程,但如果我繼續使用相同的方法我需要很多天。

請建議是否有人有更好的方法。

在此先感謝。

回答

2

它們是完全不同的技術。沒有辦法將它們遷移到硒2本身。

幸運的是,最近的Selenium版本已經實現了所謂的「WebDriver Backed Selenium」,所以在技術上如果您使用這些測試,它會像WebDriver測試一樣隱式地運行它們。

除此之外,不,沒有簡單的方法。

我有同樣的問題 - 我們現在:)

+0

感謝您的回覆。我想你說的是對的..我也有同樣的感覺,現在開始重寫代碼。 :( – OverrockSTAR

2

在遷移我們的整個迴歸套件S2在webdriver的文件,他們解釋,開始從RC硒硒對webdriver的遷移的方法。 基本上,正在創建硒對象是這樣的:

WebDriver driver = new FirefoxDriver(); 
Selenium selenium = new WebDriverBackedSelenium(driver, "http://www.yoursite.com"); 

與該遷移(而不是改變整個代碼)的主要問題是在等待頁面加載。正如他們所說,WaitForPageToLoad命令返回的時間太快了。 getEval是您必須更改的另一個命令。 我認爲最好的方法是使用與Selenium RC和Selenium WebDriver不同的主要命令來製作函數,並且一旦所有工作都「正常」,請不要修改您的代碼,直到不存在Selenium RC。這就是我們進行遷移的方式,並且我們有很多代碼行。

這是鏈接,在那裏他們解釋如何開始: http://www.seleniumhq.org/docs/appendix_migrating_from_rc_to_webdriver.jsp#migrating-to-webdriver-reference

+0

感謝您的回覆。我已經嘗試過這種方法,但仍然不是100%成功..我想最好的方法是重新編寫整個代碼。 – OverrockSTAR

相關問題