error: [Errno 111] Connection refused - Python, Selenium
error: [Errno 111] Connection refused - Python, Selenium
我正在学习使用 Selenium。到目前为止,我成功地让它工作了。所以,现在我想使用 Selenium IDE 记录导航序列,将它们导出到 python 和 运行 它们。
这是我使用的代码。
from selenium import selenium
import unittest, time, re
#from pyvirtualdisplay import Display
class rc(unittest.TestCase):
def setUp(self):
self.verificationErrors = []
#self.display = Display(visible=0, size=(1024, 768))
#self.display.start()
self.selenium = selenium("localhost", 4444, "*chrome", "http://www.some-website.in")
self.selenium.start()
def test_rc(self):
sel = self.selenium
sel.click("link=Careers")
response = sel.get_title()
print response
def tearDown(self):
self.selenium.stop()
self.assertEqual([], self.verificationErrors)
#self.display.stop()
if __name__ == '__main__':
unittest.main()
注释行是手动添加的,并在它们起作用的情况下进行了尝试(就像它们在前面的基本示例中所做的那样,我只是想让 selenium 起作用并解决依赖关系)。
在运行这个自动生成的python代码中,我得到:
File "mytest_test.py", line 34, in setUp
self.selenium.start()
File "/usr/local/lib/python2.7/dist-packages/selenium/selenium.py", line 202, in start
result = self.get_string("getNewBrowserSession", start_args)
File "/usr/local/lib/python2.7/dist-packages/selenium/selenium.py", line 237, in get_string
result = self.do_command(verb, args)
File "/usr/local/lib/python2.7/dist-packages/selenium/selenium.py", line 226, in do_command
conn.request("POST", "/selenium-server/driver/", body, headers)
File "/usr/lib/python2.7/httplib.py", line 973, in request
self._send_request(method, url, body, headers)
File "/usr/lib/python2.7/httplib.py", line 1007, in _send_request
self.endheaders(body)
File "/usr/lib/python2.7/httplib.py", line 969, in endheaders
self._send_output(message_body)
File "/usr/lib/python2.7/httplib.py", line 829, in _send_output
self.send(msg)
File "/usr/lib/python2.7/httplib.py", line 791, in send
self.connect()
File "/usr/lib/python2.7/httplib.py", line 772, in connect
self.timeout, self.source_address)
File "/usr/lib/python2.7/socket.py", line 571, in create_connection
raise err
error: [Errno 111] Connection refused
帮忙?
您为 selenium RC 转换了测试脚本,因此在执行测试脚本之前确保 selenium RC 服务器 运行在您的机器上可用。
用户在 运行 selenium 服务器下命令:
打开命令提示符并转到下载的 selenium 服务器 jar 文件和 运行 命令
java -jar selenium-server-standalone-2.47.1.jar
在我的例子中,问题是 Chrome 和 chromedriver
的不兼容版本
在您的终端中检查以下命令:
cd <<your test folder>>
which chromedriver
chromedriver --version
并将版本与chromedriver的最新版本进行比较:
https://sites.google.com/a/chromium.org/chromedriver/
当您遇到此类问题时,请检查您的 geckodriver
设置。
当您打开浏览器时,您的 marionette 驱动程序代码应该这样注释:#cap['marionette'] = True
.
不要为 Linux 启用 marionette 驱动程序。
我正在学习使用 Selenium。到目前为止,我成功地让它工作了。所以,现在我想使用 Selenium IDE 记录导航序列,将它们导出到 python 和 运行 它们。
这是我使用的代码。
from selenium import selenium
import unittest, time, re
#from pyvirtualdisplay import Display
class rc(unittest.TestCase):
def setUp(self):
self.verificationErrors = []
#self.display = Display(visible=0, size=(1024, 768))
#self.display.start()
self.selenium = selenium("localhost", 4444, "*chrome", "http://www.some-website.in")
self.selenium.start()
def test_rc(self):
sel = self.selenium
sel.click("link=Careers")
response = sel.get_title()
print response
def tearDown(self):
self.selenium.stop()
self.assertEqual([], self.verificationErrors)
#self.display.stop()
if __name__ == '__main__':
unittest.main()
注释行是手动添加的,并在它们起作用的情况下进行了尝试(就像它们在前面的基本示例中所做的那样,我只是想让 selenium 起作用并解决依赖关系)。
在运行这个自动生成的python代码中,我得到:
File "mytest_test.py", line 34, in setUp
self.selenium.start()
File "/usr/local/lib/python2.7/dist-packages/selenium/selenium.py", line 202, in start
result = self.get_string("getNewBrowserSession", start_args)
File "/usr/local/lib/python2.7/dist-packages/selenium/selenium.py", line 237, in get_string
result = self.do_command(verb, args)
File "/usr/local/lib/python2.7/dist-packages/selenium/selenium.py", line 226, in do_command
conn.request("POST", "/selenium-server/driver/", body, headers)
File "/usr/lib/python2.7/httplib.py", line 973, in request
self._send_request(method, url, body, headers)
File "/usr/lib/python2.7/httplib.py", line 1007, in _send_request
self.endheaders(body)
File "/usr/lib/python2.7/httplib.py", line 969, in endheaders
self._send_output(message_body)
File "/usr/lib/python2.7/httplib.py", line 829, in _send_output
self.send(msg)
File "/usr/lib/python2.7/httplib.py", line 791, in send
self.connect()
File "/usr/lib/python2.7/httplib.py", line 772, in connect
self.timeout, self.source_address)
File "/usr/lib/python2.7/socket.py", line 571, in create_connection
raise err
error: [Errno 111] Connection refused
帮忙?
您为 selenium RC 转换了测试脚本,因此在执行测试脚本之前确保 selenium RC 服务器 运行在您的机器上可用。
用户在 运行 selenium 服务器下命令: 打开命令提示符并转到下载的 selenium 服务器 jar 文件和 运行 命令
java -jar selenium-server-standalone-2.47.1.jar
在我的例子中,问题是 Chrome 和 chromedriver
的不兼容版本在您的终端中检查以下命令:
cd <<your test folder>>
which chromedriver
chromedriver --version
并将版本与chromedriver的最新版本进行比较: https://sites.google.com/a/chromium.org/chromedriver/
当您遇到此类问题时,请检查您的 geckodriver
设置。
当您打开浏览器时,您的 marionette 驱动程序代码应该这样注释:#cap['marionette'] = True
.
不要为 Linux 启用 marionette 驱动程序。