我使用量角器来测试Angular2应用程序。它工作正常,我认为我没有改变任何东西,但现在它最终得到这个:
...
super(opt_error);
^
SessionNotCreatedError: session not created exception
from unknown error: Runtime.executionContextCreated has invalid 'context': {"auxData":{"frameId":"4012.1","isDefault":true},"id":1,"name":"","origin":"://"}
(Session info: chrome=54.0.2840.71)
(Driver info: chromedriver=2.21.371459
...
我使用的是Mac OSX 10.11.4,Chrome 54.0.2840.71。
有什么建议吗?谢谢
---编辑26/10
由于它取决于每个设置,因此看起来并不是绝对的答案。主要想法是相应地更新量角器/ chromedriver / webdriver-manager。
说我现在面临另一个问题:我做的每一个基本测试,包括(例如)一个browser.get()失败:
Error: Timeout - Async callback was not invoked within timeout specified by jasmine.DEFAULT_TIMEOUT_INTERVAL
我不知道它是否是一个孤立的案例,如果它适合这里(我使用jasmine2作为框架)所以我开始另一个问题here
答案 0 :(得分:7)
我安装了ChromeDriver v2.24并将其存储在:/usr/local/Cellar/chromedriver/2.24/bin中,它为我修复了错误。
答案 1 :(得分:2)
正如其他人所说,看起来这是使用新版本的chrome安装在系统中的chromedriver的问题。对于mac,我使用< chromedriver-update'更新了chromedriver。这解决了它。
答案 2 :(得分:1)
我有一个类似的问题并通过手动删除webdriver-manager强制chromedriver 2.24来解决它
删除文件夹rm -rf /usr/local/lib/node_modules/webdriver-manager/
重新安装webdriver
npm install -g webdriver-manager
答案 3 :(得分:0)
我将selenium-standalone
更新为最新版本5.8.0
(来自5.1.0
)。它将安装较新版本的chrome webdriver(2.25),而不是安装chrome driver2.21。这解决了我的问题。(没有连接,会话异常)
答案 4 :(得分:0)
如果即使在将webdriver更新 2.25 之后,仍然会出现错误,如果您正在使用终端应用< / strong>这应该有所帮助:
我设法通过取消选中高级终端应用设置中的“启动时设置语言环境变量”复选框来修复此问题。 或尝试使用此前缀启动测试:
LC_NUMERIC=”en_US.UTF-8″ npm test