我正在使用较旧版本的自动化脚本,该脚本登录页面并运行测试。
我们想将经典的Selenium构造函数更改为WebDriverBackedSelenium构造函数,以便进行更多的测试。
我们最初的构造函数调用是:
selenium = new DefaultSelenium("localhost", 4444, "*firefox", "https://asdffdsa.com/");
如何使用相同的参数设置WebDriverBackedSelenium构造函数?该API显示我们需要将构造函数设置为:
seWebDriver = new WebDriverBackedSelenium(driver, "https://asdffdsa.com");
似乎没有任何迹象表明硒服务器在哪里运行,什么端口和什么浏览器。
当前使用以下代码:
driver = new FirefoxDriver();
seWebDriver = new WebDriverBackedSelenium(driver, "https://www.asdfdfdfsfs.com");
seWebDriver.open("/");
刚刚注意到我收到以下错误:
由以下原因引起:org.openqa.selenium.firefox.NotConnectedException:在45000毫秒后无法连接到端口7055上的主机127.0.0.1。 Firefox控制台输出:
* LOG addons.manager:应用程序已升级
LOG addons.xpi:启动
LOG addons.xpi:跳过不可用的安装位置app-system-share
LOG addons.xpi:忽略名称不是有效附加ID的文件条目:/ var / folders / pf / hvzyf38x59vfbgf8zpvw5v800000gn / T / anonymous2501560210712840923webdriver-profile / extensions / webdriver-staging
LOG addons.xpi:checkForChanges
LOG addons.xpi-utils:打开数据库
LOG addons.xpi-utils:创建数据库架构
LOG addons.xpi:在应用程序配置文件中安装了新的附件[email protected]
阻止列表:: _ loadBlocklistFromFile:阻止列表被禁用
LOG addons.xpi:在app-global中安装了新的附件{972ce4c6-7e08-4474-a285-3208198ce6fd}
LOG addons.xpi:使用已安装的加载项更改来更新数据库
LOG addons.xpi-utils:更新加载项状态
LOG addons.xpi-utils:编写加载项列表
LOG addons.manager:关闭
LOG addons.xpi:关闭
LOG addons.xpi-utils:关闭
LOG addons.xpi-utils:数据库已关闭
LOG addons.xpi:启动
LOG addons.xpi:跳过不可用的安装位置app-system-share
LOG addons.xpi:忽略名称不是有效附加ID的文件条目:/ var / folders / pf / hvzyf38x59vfbgf8zpvw5v800000gn / T / anonymous2501560210712840923webdriver-profile / extensions / webdriver-staging
LOG addons.xpi:checkForChanges
* LOG addons.xpi:未找到更改
最佳答案
这是使用Webdriver支持的硒的示例。
使用webdriverbacked的Selenium时无需提及端口号。
在下面的程序中,对象Selenium
用于利用Selenium RC(旧的自动化脚本构造函数)的属性。
对象driver
用于利用Webdriver(Selenium2.0)的功能。
public class BackedWebdriver {
public static WebDriver driver;
public static String baseUrl;
public static Selenium selenium;
public static void main(String[] args) {
driver = new FirefoxDriver(); //Here we are mentioning that we will use Firefox browser
baseUrl = "http://www.google.co.in/";
driver.get(baseUrl);
selenium = new WebDriverBackedSelenium(driver, baseUrl);
selenium.windowMaximize();
driver.findElement(By.id("gbqfq")).clear();
driver.findElement(By.id("gbqfq")).sendKeys("selenium");
selenium.click("g");
driver.findElement(By.id("gbqfb")).click();
}