是否可以使用Selenium WebDriver捕获用户输入/操作,就像使用Selenium IDE记录/创建测试一样?
即当用户输入URL时,单击链接,填写文本框,单击按钮等 .
我希望能够使用WebDriver捕获这些操作,而不是仅仅使用Selenium IDE,因为我想与我的Java应用程序中可用的其他类集成 .
您无法使用Selenium WebDriver“记录”一组操作,您需要手动编写这些步骤 .
严格来说,您可以使用所选语言的WebDriver API( C#, Java, PHP, Ruby. Python, Perl or JavaScript )捕获用户输入,并且它模糊地类似于使用DOM . 如果它符合您的要求,您可以使用配置文件来提供一些用户输入 .
C#, Java, PHP, Ruby. Python, Perl or JavaScript
Navigate to a URL:
WebDriver driver = new FirefoxDriver(); driver.get('url')
Click a link/button:
WebElement element = driver.findElement(By.id("coolestWidgetEvah")); element.click();
Enter Text in a field:
WebElement element = driver.findElement(By.id("coolestWidgetEvah")); element.sendKeys('userinput');
有关API Selenium HQ的更多信息非常明确:
http://seleniumhq.org/docs/03_webdriver.html#introducing-the-selenium-webdriver-api-by-example
如果您从 Selenium IDE 开始编写测试,那么'd be really useful to check out the page object pattern as I' ve发现它可以让您的测试在长期内更易于维护 . 此链接是一个很好的起点,因为它提供了一个概述,并通过遵循该模式可视化地表示您获得的内容:
Selenium IDE
http://blog.josephwilk.net/cucumber/page-object-pattern.html
希望有所帮助 .
我试图在Record Actions using Selenium中提供可行的解决方案
希望这可以帮助 .
据我所知,没有一种简单的方法可以做到 - 但是在IDE上录制和导出为java文件对我来说效果很好(文件 - >导出测试用例为...) . 我通常是用c#做的,但是用过java .
3 回答
您无法使用Selenium WebDriver“记录”一组操作,您需要手动编写这些步骤 .
严格来说,您可以使用所选语言的WebDriver API(
C#, Java, PHP, Ruby. Python, Perl or JavaScript
)捕获用户输入,并且它模糊地类似于使用DOM . 如果它符合您的要求,您可以使用配置文件来提供一些用户输入 .Navigate to a URL:
Click a link/button:
Enter Text in a field:
有关API Selenium HQ的更多信息非常明确:
http://seleniumhq.org/docs/03_webdriver.html#introducing-the-selenium-webdriver-api-by-example
如果您从
Selenium IDE
开始编写测试,那么'd be really useful to check out the page object pattern as I' ve发现它可以让您的测试在长期内更易于维护 . 此链接是一个很好的起点,因为它提供了一个概述,并通过遵循该模式可视化地表示您获得的内容:http://blog.josephwilk.net/cucumber/page-object-pattern.html
希望有所帮助 .
我试图在Record Actions using Selenium中提供可行的解决方案
希望这可以帮助 .
据我所知,没有一种简单的方法可以做到 - 但是在IDE上录制和导出为java文件对我来说效果很好(文件 - >导出测试用例为...) . 我通常是用c#做的,但是用过java .