我尝试远程调试Internjs运行的测试。 基本上它是由Selenium和Chromedriver运行的Chrome。
我将Chromedriver debuggerAddress选项设置为
debuggerAddress: '127.0.0.1:8765'
现在,当我运行测试时,Selenium会等待一段时间而不是失败并显示消息:
FATAL ERROR
UnknownError: [POST http://localhost:4444/wd/hub/session / {"desiredCapabilities":{"browserName":"chrome","name":"tests/intern_local","idle-timeout":60,"selenium-version":"2.44.0","chromeOptions":{"debuggerAddress":"127.0.0.1:8765"}}}] unknown error: cannot connect to chrome at 127.0.0.1:8765
from chrome not reachable
(Driver info: chromedriver=2.12.301326 (093c7e07b4a916b690e784b0374c7f618f1ea4be),platform=Mac OS X 10.10.1 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 60.64 seconds
我不知道我必须做什么才能将chrome连接到服务器。
我确实尝试过:
./chromedriver_2.11 --port=8765
--remote-debugging-port=8765
但我没有其他想法如何启动chrome调试服务器。
我尝试过的有用链接对我不起作用:
更新1 强制Chromedriver在远程调试时使用Chrome实例
中运行新的Chrome实例/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222 --no-first-run --no-default-browser-check --user-data-dir=$(mktemp -d -t 'chrome-remote_data_dir')
在实习生中
intern.capabilities = {
'selenium-version': '2.44.0'
, 'chromeOptions': {
debuggerAddress: '127.0.0.1:9222'
}
};
现在,当您运行Intern测试时,Intern将使用您之前打开的Chrome实例。现在您可以打开localhost:9222
并且您将看到您可以调试运行测试的选项卡。但是对我来说,我只能看到远程标签,但点击它却什么也没做。
我也尝试过Firefox WebIDE。我尝试连接到localhost:9222
,它开始加载,一段时间后它说它无法连接。
答案 0 :(得分:1)
我今晚尝试了类似的东西,没有使用框架。我打开了一个webdriver会话&添加了远程调试器功能。 似乎无法运行webdriver会话&远程调试同时进行。我让一些谷歌家伙验证了这一点,但还没有收到答案。