繁体   English   中英

使用Java捕获Selenium WebDriver的用户输入和操作

[英]Capture user input and actions with Selenium WebDriver using Java

是否可以使用Selenium WebDriver捕获用户输入/操作,就像使用Selenium IDE记录/创建测试一样?

即,当用户输入URL,单击链接,填写文本框,单击按钮等。

我希望能够使用WebDriver捕获这些操作,而不仅仅是使用Selenium IDE,因为我想与我的Java应用程序中可用的其他类集成。

我尝试使用SeleniumRecord Actions中提供可行的解决方案

希望这可以帮助。

您无法使用Selenium WebDriver“记录”一组操作,您需要手动编写这些步骤。

严格来说,您可以使用所选语言( C#, Java, PHP, Ruby. Python, Perl or JavaScript )中的WebDriver API捕获用户输入,并且它模糊地类似于使用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 Selenium 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

希望有所帮助。

据我所知,没有一种简单的方法可以做到 - 但在IDE上录制并作为java文件导出对我来说效果很好(文件 - >导出测试用例为......)。 我经常把它做到c#但是用它和java一起使用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM