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

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

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

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


答案 1

我试图在使用硒的记录操作中提供可行的解决方案

希望这有帮助。


答案 2

你不能用Selenium WebDriver“记录”一组动作,你需要手动编写这些步骤。

严格来说,你可以通过使用所选语言的 WebDriver API 来捕获用户输入(),它与使用 DOM 非常相似。如果它符合您的要求,您可以使用配置文件来提供一些用户输入。C#, Java, PHP, Ruby. Python, Perl or JavaScript

导航到网址:

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

希望有所帮助。