2012-11-06 21 views
10

Selenium WebDriver可以捕獲用戶輸入/操作,就像您可以使用Selenium IDE進行記錄/創建測試一樣?當用戶輸入一個URL,點擊一個鏈接,在文本框中填入,使用Java捕獲用戶輸入和使用Selenium WebDriver的操作

即點擊一個按鈕等等等等

我希望能夠捕捉到使用webdriver的這些行動,而不是僅僅使用Selenium IDE,因爲我想與我的Java應用程序中提供的其他類進行集成。

+0

+收藏夾。其他消息:我不知道這是可能的 –

+0

您只能在錄製過程中更改Selenium IDE中的格式。默認情況下,它以HTML格式記錄。您可以將Java的格式更改爲Java/JUnit4/WebDriver,它將以Java格式爲您錄製。 –

回答

0

您無法使用Selenium WebDriver「記錄」一組操作,您需要手動編寫這些步驟。

嚴格來說,您可以通過使用所選語言的WebDriver API(C#, Java, PHP, Ruby. Python, Perl or JavaScript)來捕獲用戶輸入,並且它隱約類似於使用DOM。如果它符合您的要求,您可以使用配置文件提供一些用戶輸入。

導航到一個URL:

WebDriver driver = new FirefoxDriver(); 

driver.get('url') 

點擊鏈接/按鈕:

WebElement element = driver.findElement(By.id("coolestWidgetEvah")); 

element.click(); 

在字段中輸入文本:

WebElement element = driver.findElement(By.id("coolestWidgetEvah")); 

element.sendKeys('userinput'); 

有關API HQ硒的更多信息是非常明確的:

http://seleniumhq.org/docs/03_webdriver.html#introducing-the-selenium-webdriver-api-by-example

如果你從Selenium IDE去寫作測試中,它會非常有用檢查出的頁面對象圖案,我發現它使您的測試在長期內更易於維護。此鏈接是一個很好的起點,因爲它提供了一個概述,你通過以下方式獲得的可視表示:

http://blog.josephwilk.net/cucumber/page-object-pattern.html

希望有所幫助。

+0

有問題的要求是不同的。要求是在應用程序運行時模擬記錄作爲應用程序本身的一部分 – rags

+0

據我所知,據我所知,不能像使用Selenium IDE一樣記錄您的操作。 – Nickel

+0

答案根據問題不匹配 –

0

據我所知,沒有一種簡單的方法來做到這一點 - 但在IDE上錄製和導出爲java文件對我來說效果不錯(File - > Export test case as ...) 。我通常這樣做到C#,但用它與Java。

相關問題