【发布时间】:2012-03-28 15:34:02
【问题描述】:
我升级到 Selenium 2.20 以在 Python 中使用 Webdriver 支持的 Selenium。我这样做是为了可以使用 Webdriver 运行我的测试,而无需重写我所有的测试用例。我试图按照http://seleniumhq.wordpress.com/2012/02/08/announcing-selenium-2-19-the-prancing-unicorn-release/ 的示例进行操作,但我发现其中两个函数:RemoteWebDriver() 和 DefaultSelenium() 在我的代码库中不存在。相反,我使用了我能找到的最接近的函数:分别是 webdriver.Remote() 和 selenium()。这两个似乎具有相同的功能,但是当我尝试运行测试用例时,我收到错误“KeyError:webdriver.remote.sessionid”。
这里是示例代码供参考:
driver = RemoteWebDriver(desired_capabilities = DesiredCapabilities.FIREFOX)
selenium = DefaultSelenium('localhost', 4444', '*webdriver', 'http://www.google.com')
selenium.start(driver = driver)
这是我正在使用的代码:
self.webdriver = webdriver.Remote(desired_capabilities=DesiredCapabilities.FIREFOX)
self.selenium = selenium('localhost', 4444, '*webdriver', SITE)
self.selenium.start(driver = self.webdriver)
注意:我在模块之间传递 self ,忽略它。此外,SITE 是一个全局变量,用于保存我的测试站点的 url。也无视。
如果有什么需要澄清的,请告诉我。
【问题讨论】: