在Python中运行基本的Selenium测试脚本时出现以下错误:
======================================================================
ERROR: test_untitled (__main__.TestTesting)
----------------------------------------------------------------------
Traceback (most recent call last):
File "TestTesting.py", line 15, in setUp
self.selenium.start()
File "/usr/lib/python2.6/dist-packages/selenium.py", line 166, in start
result = self.get_string("getNewBrowserSession", [self.browserStartCommand, self.browserURL])
File "/usr/lib/python2.6/dist-packages/selenium.py", line 195, in get_string
result = self.do_command(verb, args)
File "/usr/lib/python2.6/dist-packages/selenium.py", line 191, in do_command
raise Exception, data
Exception: Failed to start new browser session: Error while launching browser
----------------------------------------------------------------------
Ran 1 test in 20.427s
FAILED (errors=1)
代码是从Selenium IDE,firefox插件生成的,所以我不确定它为什么不起作用。我的猜测是某种配置不正确,但我不确定。这是我的代码:
from selenium import selenium
class TestTesting(unittest.TestCase):
def setUp(self):
self.verificationErrors = []
self.selenium = selenium("localhost", 4444, "*firefox", "http://www.google.com/")
self.selenium.start()
def test_untitled(self):
sel = self.selenium
sel.open("/firefox?client=firefox-a&rls=org.mozilla:en-US:official")
sel.type("sf", "test")
sel.click("btnG")
sel.wait_for_page_to_load("30000")
def tearDown(self):
self.selenium.stop()
self.assertEqual([], self.verificationErrors)
if __name__ == "__main__":
unittest.main()
服务器在Ubuntu上运行。
如何避免此错误?
答案 0 :(得分:2)
我开始工作的修复是没有设置firefox的显示。所以我需要执行以下语句:
export DISPLAY=:0
在我启动Selenium服务器之前。这解决了这个问题,但又出现了一个新问题。
答案 1 :(得分:0)
这通常在另一个firefox已经打开时发生。即您正在使用特定的FF配置文件来应用程序。运行脚本时,请关闭FF。
答案 2 :(得分:0)
暂时以root身份启动selenium服务器对我来说很有用:
sudo java -jar selenium-server.jar