我正在从RC迁移到webdriver。 在我现有的项目中,我使用Selenium类中的方法 selenium.click() selenium.type() 等
我是否需要将这些命令更改为等效的webdriver命令,或者是否仍然可以使用这些命令?
我使用的是Firefox 12,Eclipse IDE
答案 0 :(得分:4)
有WebDriverBackedSelenium
。本质上,这是RC API和WebDriver API之间的桥梁。这将完成您的工作,将对代码进行一些修改,但大多数仍将是相同的。它为您提供了WebDriver本身的灵活性,同时保持旧代码不变。
强烈建议您将解决方案完全转换为直接使用WebDriver API。
WebDriver API不断更新,工作和支持。
RC API 和“RC-WebDriver-Bridge”(WebDriverBackedSelenium)将不会。
WebDriverBackedSelenium
上的页面存在于此处:
用于创建Firefox新实例的示例用法:
var driver = new FirefoxDriver();
var selenium = new WebDriverBackedSelenium(driver, baseUrl);
selenium.open("http://www.google.com");
selenium.type("name=q", "cheese");
selenium.click("name=btnG");
selenium.stop();
答案 1 :(得分:4)
使用给定的驱动程序创建WebDriverBackedSelenium实例后,不必调用start() - 因为驱动程序的创建已经启动了会话。在测试结束时,应该调用stop()而不是Driver的quit()方法。
这更类似于WebDriver的行为 - 因为创建一个Driver实例会启动一个会话,但是必须通过调用quit()显式终止它。