- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
尝试为我们的 Django 项目运行一些功能测试,但我们遇到了一个非常难以调试的错误。我们已尝试设置 sauce connect ,但我们的构建失败了。
你可以看到 results的构建,但这里是堆栈跟踪。
======================================================================
ERROR: test_page_load (quote_me.tests.FunctionalTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/opt/python/3.6.3/lib/python3.6/urllib/request.py", line 1318, in do_open
encode_chunked=req.has_header('Transfer-encoding'))
File "/opt/python/3.6.3/lib/python3.6/http/client.py", line 1239, in request
self._send_request(method, url, body, headers, encode_chunked)
File "/opt/python/3.6.3/lib/python3.6/http/client.py", line 1285, in _send_request
self.endheaders(body, encode_chunked=encode_chunked)
File "/opt/python/3.6.3/lib/python3.6/http/client.py", line 1234, in endheaders
self._send_output(message_body, encode_chunked=encode_chunked)
File "/opt/python/3.6.3/lib/python3.6/http/client.py", line 1026, in _send_output
self.send(msg)
File "/opt/python/3.6.3/lib/python3.6/http/client.py", line 964, in send
self.connect()
File "/opt/python/3.6.3/lib/python3.6/http/client.py", line 1400, in connect
server_hostname=server_hostname)
File "/opt/python/3.6.3/lib/python3.6/ssl.py", line 407, in wrap_socket
_context=self, _session=session)
File "/opt/python/3.6.3/lib/python3.6/ssl.py", line 814, in __init__
self.do_handshake()
File "/opt/python/3.6.3/lib/python3.6/ssl.py", line 1068, in do_handshake
self._sslobj.do_handshake()
File "/opt/python/3.6.3/lib/python3.6/ssl.py", line 689, in do_handshake
self._sslobj.do_handshake()
ssl.SSLEOFError: EOF occurred in violation of protocol (_ssl.c:777)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/travis/build/winecountry/quote-me/quote_me/tests.py", line 77, in setUp
self.selenium = webdriver.Remote(desired_capabilities=capabilities, command_executor="https://%s/wd/hub" % hub_url)
File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 154, in __init__
self.start_session(desired_capabilities, browser_profile)
File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 243, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 310, in execute
response = self.command_executor.execute(driver_command, params)
File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/selenium/webdriver/remote/remote_connection.py", line 466, in execute
return self._request(command_info[0], url, body=data)
File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/selenium/webdriver/remote/remote_connection.py", line 528, in _request
resp = opener.open(request, timeout=self._timeout)
File "/opt/python/3.6.3/lib/python3.6/urllib/request.py", line 526, in open
response = self._open(req, data)
File "/opt/python/3.6.3/lib/python3.6/urllib/request.py", line 544, in _open
'_open', req)
File "/opt/python/3.6.3/lib/python3.6/urllib/request.py", line 504, in _call_chain
result = func(*args)
File "/opt/python/3.6.3/lib/python3.6/urllib/request.py", line 1361, in https_open
context=self._context, check_hostname=self._check_hostname)
File "/opt/python/3.6.3/lib/python3.6/urllib/request.py", line 1320, in do_open
raise URLError(err)
urllib.error.URLError: <urlopen error EOF occurred in violation of protocol (_ssl.c:777)>
错误将我指向 tests.py
中的第 77 行文件,这是
self.selenium = webdriver.Remote(desired_capabilities=capabilities, command_executor="https://%s/wd/hub" % hub_url)
这都是基于code from Travis , 你可以看到我们的 .travis.yml
.
def setUp(self):
if "TRAVIS" in environ:
username = environ["SAUCE_USERNAME"]
access_key = environ["SAUCE_ACCESS_KEY"]
capabilities = {}
capabilities["tunnel-identifier"] = environ["TRAVIS_JOB_NUMBER"]
hub_url = "%s:%s@localhost:4445" % (username, access_key)
capabilities["build"] = environ["TRAVIS_BUILD_NUMBER"]
capabilities["tags"] = [environ["TRAVIS_PYTHON_VERSION"], "CI"]
self.selenium = webdriver.Remote(desired_capabilities=capabilities, command_executor="https://%s/wd/hub" % hub_url)
else:
self.selenium = webdriver.Safari()
super(FunctionalTestCase, self).setUp()
似乎是 SSL 证书问题,所以我查看了 no_ssl_bump_domains
option但似乎没有帮助。还认为有些东西可能会不稳定,因为我们正在使用 Django manage.py runserver
命令。
如果您需要更多信息,请告诉我,我们非常感谢您的帮助!
最佳答案
通过更改修复此问题
self.selenium = webdriver.Remote(desired_capabilities=capabilities, command_executor="https://%s/wd/hub" % hub_url)
到
self.selenium = webdriver.Remote(desired_capabilities=capabilities, command_executor="http://%s/wd/hub" % hub_url)
如果您错过了,我们将 command_executor
更改为使用 http
而不是 https
。
关于django - 使用 Selenium webdriver 测试在 Travis CI 中使用 Sauce Labs 的 SSL 错误(Django 项目),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48236104/
我到处寻找,但没有找到任何关于如何正确设置代理以在 Sauce labs 上运行脚本并提取 HAR 文件的好文档。我在嵌入模式下使用 BMP https://github.com/lightbody/
我是酱汁实验室的菜鸟。我第一次在 appium Desired 功能上运行我的 Sauce 实验室,并收到以下错误消息: unable to parse remote response: Miscon
我正在使用 rspec 和 cucumber 在 sauce labs 运行 watir 测试。 我希望测试名称(在 sauce labs)与 rspec describe block 或 cucum
我们正在研究使用 Microsoft 的编码 UI 测试或 Telerik TestStudio 框架来自动化我们的 Web UI。我很想使用像 Sauce Labs 这样的服务来运行我们的测试,但是
我已阅读:Sauce Labs: Connect page 并浏览了互联网,但我找不到任何有关如何将 Selenium 测试转换为使用 Sauce Connect 的文档。 有人能指出我正确的方向吗?
我的 Web 驱动程序代码在浏览器的本地实例上运行时没有问题。我的代码与浏览器交互,但有一段时间它通过终端启动一些后台任务,以便为测试的其余部分设置数据。这是一个端到端的测试,它需要按照这个顺序执行,
我将 Selenium WebdriverJs 与 Mocha 结合使用,通过 Travis CI 在 Sauce Labs 上运行测试。我已经在没有任何项目依赖性的情况下隔离了我的问题。请帮忙。 因
使用 selenium webdriver 在本地运行良好的测试在 Saucelabs.com 上远程运行时超时。相同的测试适用于 Chrome(本地和酱料)。 从客户端代码方面来看,以下代码中的点击
我有使用 selenium-webdriver 编写的 ruby 单元测试,这些测试在 Sauce labs ondemand 上运行。当我在 sauce labs 上查找测试时,对应的名称是 U
如何让 ember-cli 测试在 Sauce Labs 上运行? Testem 有一个 example configuration ,但我不知道如何将其转换为 ember-cli 编译测试,因为 t
我在本地使用嵌入式 Browsermob 代理服务器进行了工作测试。没有什么新东西,但这里仍然是示例代码。 _server = new BrowserMobProxyServer()
我使用 Jenkins 和 Sauce Labs 配置了 Magento 测试自动化框架 (MTAF),一切正常。但是,在构建多配置项目时,我从Jenkins的作业配置中的浏览器列表中选择了另外两个浏
我正在努力让 Travis CI 使用 Sauce Labs 运行 Protractor 测试。隧道工作正常,我的 Express 服务器明显启动并保持在 http://localhost:9000
我想使用 Sauce Labs Java REST API 将通过/失败状态发送回 Sauce Labs 仪表板。我正在使用 Geb+Spock,我的 Gradle 构建会创建一个测试结果目录,其中结
我正在尝试在 Sauce Labs 中设置我的第一个 Appium 测试(不是 native 或混合应用程序),并且在尝试设置我的功能时遇到 WebDriverException: org.openq
我目前正在 sauce lab 上运行一系列 selenium 测试。我不会对所有 android 浏览器进行测试,但我似乎无法弄清楚如何正确指定我想要一个 android 设备。我的代码基于此模板:
所以,对于这种事情,我完全是个菜鸟,我需要一些帮助。我在一家电子商务公司从事软件 QA 工作,我们开始使用 Saucelabs 进行自动化测试。我正在学习 python,但目前几乎一无所知。我可以在
我正在使用 Sauce Labs 来运行我的 Selenium 测试脚本,并以 Mocha 作为测试框架。脚本运行完美,但问题是,作业没有完成 - 似乎 driver.quit() 被忽略,并且在 9
Sauce Labs 有一个特定的 :passed 选项,可用于报告测试的通过/失败状态 - ( https://saucelabs.com/docs/additional-config)。 我只是想
尝试通过 Sauce Connect 在 Sauce Labs 上运行 Protractor-Cucumber 测试。 使用命令 sc -u -k 启动 sauce connect 隧道 exe我收
我是一名优秀的程序员,十分优秀!