我升级到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()。这两个SEEM具有相同的功能,但是当我尝试运行测试用例时,我收到错误“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)
注意:我在模块之间传递自我,忽略它。此外,SITE是一个全局变量,用于保存测试站点的URL。也忽略它。
如果有任何需要澄清的话,请告诉我。