Javascript STS IDE 中的量角器 -> 找不到 update-config.json
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/42426549/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Protractor in STS IDE -> Could not find update-config.json
提问by EdXX
Currently I have Protractor v.5.1.1, Node.js v.6.10.0
目前我有 Protractor v.5.1.1,Node.js v.6.10.0
All protractor tests work in window console but when I try to run them from STS IDE I get below error. Of course i did 'webdriver-manager update' but it doesn't help at all. Does anyone has an idea how to resolve this problem?
所有量角器测试都在窗口控制台中运行,但是当我尝试从 STS IDE 运行它们时,出现以下错误。当然我做了'webdriver-manager update',但它根本没有帮助。有谁知道如何解决这个问题?
Below the error respectively when I use or do not 'directConnect'
分别在我使用或不使用“directConnect”时的错误下方
[22:21:48] I/launcher - Running 1 instances of WebDriver
[22:21:48] I/direct - Using ChromeDriver directly...
[22:21:48] E/direct - Error code: 135
[22:21:48] E/direct - Error message: Could not find update-config.json. Run 'webdriver-manager update' to download binaries.
[22:21:48] E/direct - Error: Could not find update-config.json. Run 'webdriver-manager update' to download binaries.
at IError (D:\STS_workspace\jgh\node_modules\protractor\built\exitCodes.js:5:1)
at ProtractorError (D:\STS_workspace\jgh\node_modules\protractor\built\exitCodes.js:10:9)
at BrowserError (D:\STS_workspace\jgh\node_modules\protractor\built\exitCodes.js:51:9)
at Direct.getNewDriver (D:\STS_workspace\jgh\node_modules\protractor\built\driverProviders\direct.js:62:31)
at Runner.createBrowser (D:\STS_workspace\jgh\node_modules\protractor\built\runner.js:194:43)
at q.then.then (D:\STS_workspace\jgh\node_modules\protractor\built\runner.js:338:29)
at _fulfilled (D:\STS_workspace\jgh\node_modules\q\q.js:834:54)
at self.promiseDispatch.done (D:\STS_workspace\jgh\node_modules\q\q.js:863:30)
at Promise.promise.promiseDispatch (D:\STS_workspace\jgh\node_modules\q\q.js:796:13)
at D:\STS_workspace\jgh\node_modules\q\q.js:556:49
[22:21:48] E/launcher - Process exited with error code 135
or
或者
[21:19:23] I/launcher - Running 1 instances of WebDriver
[21:19:23] E/local - Error code: 135
[21:19:23] E/local - Error message: No update-config.json found. Run 'webdriver-manager update' to download binaries.
[21:19:23] E/local - Error: No update-config.json found. Run 'webdriver- manager update' to download binaries.
at IError (D:\STS_workspace\jgh\node_modules\protractor\built\exitCodes.js:5:1)
at ProtractorError (D:\STS_workspace\jgh\node_modules\protractor\built\exitCodes.js:10:9)
at BrowserError (D:\STS_workspace\jgh\node_modules\protractor\built\exitCodes.js:51:9)
at Local.addDefaultBinaryLocs_ (D:\STS_workspace\jgh\node_modules\protractor\built\driverProviders\local.js:40:23)
at Local.setupDriverEnv (D:\STS_workspace\jgh\node_modules\protractor\built\driverProviders\local.js:81:14)
at Local.setupEnv (D:\STS_workspace\jgh\node_modules\protractor\built\driverProviders\driverProvider.js:110:34)
at q.then (D:\STS_workspace\jgh\node_modules\protractor\built\runner.js:334:41)
at _fulfilled (D:\STS_workspace\jgh\node_modules\q\q.js:834:54)
at self.promiseDispatch.done (D:\STS_workspace\jgh\node_modules\q\q.js:863:30)
at Promise.promise.promiseDispatch (D:\STS_workspace\jgh\node_modules\q\q.js:796:13)
[21:19:23] E/launcher - Process exited with error code 135
My conf.js looks like:
我的 conf.js 看起来像:
var SpecReporter = require('jasmine-spec-reporter').SpecReporter;
exports.config = {
// directConnect:true,
specs: ['spec4.js'],
framework: 'jasmine2' ,
onPrepare: function () {
jasmine.getEnv().addReporter(new SpecReporter({
spec: {
displayStacktrace: true,
displaySuccessesSummary: true,
displayFailuresSummary: true,
displayPendingSummary: true,
displaySpecDuration: true,
},
}));
},
jasmineNodeOpts: {
defaultTimeoutInterval: 25000,
print: function () {},
},
I don't have selenium folder in the path node_modules/protractor/node_modules/webdriver-manager but I have package.json where I added "webdriver-update": "webdriver-manager update". This is the output of npm run webdriver-update:
我在路径 node_modules/protractor/node_modules/webdriver-manager 中没有 selenium 文件夹,但我有 package.json,我在其中添加了“webdriver-update”:“webdriver-manager update”。这是 npm run webdriver-update 的输出:
D:\STS_workspace\jgh>npm run webdriver-update
npm WARN invalid config proxy="http:"
npm WARN invalid config Must be a full url with 'http://'
npm WARN invalid config proxy="http:"
npm WARN invalid config Must be a full url with 'http://'
npm ERR! Windows_NT 10.0.14393
npm ERR! argv "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "run" "webdriver-update"
npm ERR! node v6.10.0
npm ERR! npm v3.10.10
npm ERR! path D:\STS_workspace\jgh\package.json
npm ERR! code ENOENT
npm ERR! errno -4058
npm ERR! syscall open
npm ERR! enoent ENOENT: no such file or directory, open 'D:\STS_workspace\jgh\package.json'
npm ERR! enoent ENOENT: no such file or directory, open 'D:\STS_workspace\jgh\package.json'
npm ERR! enoent This is most likely not a problem with npm itself
npm ERR! enoent and is related to npm not being able to find a file.
npm ERR! enoent
npm ERR! Please include the following file with any support request:
npm ERR! D:\STS_workspace\jgh\npm-debug.log
回答by cnishina
It looks like you are either using directConnector launching with a localdriver provider (not having seleniumAddressor directConnect) in your configuration file. You need to run webdriver-manager update.
看起来您在配置文件中使用directConnect或启动local驱动程序提供程序(没有seleniumAddress或directConnect)。你需要运行webdriver-manager update。
Previously I had extra flags to not download standalone or gecko with webdriver-manager update --standalone false --gecko false. This is no longer the case if you are starting via a local driver provider. You will need the selenium standalone jar file.
以前我有额外的标志不能下载独立或壁虎与webdriver-manager update --standalone false --gecko false. 如果您通过本地驱动程序提供商启动,则情况不再如此。您将需要 selenium 独立 jar 文件。
You could run this with a script in package.json. Something like:
您可以使用 package.json 中的脚本运行它。就像是:
"scripts": {
"webdriver-update": "webdriver-manager update"
}
Then execute this with: npm run webdriver-update. How do you check if the binaries are there? In your project, navigate to node_modules/protractor/node_modules/webdriver-manager/selenium/. This is where the update-config.jsonand your downloaded binaries are located.
然后使用: 执行此操作npm run webdriver-update。你如何检查二进制文件是否存在?在您的项目中,导航到node_modules/protractor/node_modules/webdriver-manager/selenium/. 这是update-config.json您下载的二进制文件所在的位置。
回答by Ya Yura
You can try to update it like this, it will definitely update it in node_modules/protractor :
您可以尝试像这样更新它,它肯定会在 node_modules/protractor 中更新它:
$ ./node_modules/protractor/bin/webdriver-manager update
回答by Yildiray Meric
Just execute webdriver-managerwith npxcommand in your project folder;
只需在项目文件夹中使用npx命令执行webdriver-manager 即可;
npx webdriver-manager update
回答by beachCode
On MacOS, I resolved this error by adding the seleniumAddress to my Protractor config file (I was previously using directConnect, so commented that out):
在 MacOS 上,我通过将 seleniumAddress 添加到我的量角器配置文件中解决了这个错误(我之前使用的是 directConnect,因此将其注释掉):
// directConnect: true,
// baseUrl: 'http://localhost:4000/',
seleniumAddress: 'http://localhost:4444/wd/hub/',
I now start Protractor server by running: $ webdriver-manager start
我现在通过运行以下命令启动 Protractor 服务器: $ webdriver-manager start
And in a different terminal window, I start tests with: $ ng e2e
在不同的终端窗口中,我开始测试: $ ng e2e
回答by Siddhartha Thota
You just need to run this command and it fixes it - npm run webdriver-updateit updates you webdriver in node_modules section under node_modules/protractor.
您只需要运行此命令并修复它 -npm run webdriver-update它会在node_modules/protractor.
These 2 lines are the main culprits. Just try running that command and it should fix your issue.
这两条线是罪魁祸首。只需尝试运行该命令,它应该可以解决您的问题。
[22:21:48] E/direct - Error message: Could not find update-config.json. Run 'webdriver-manager update' to download binaries.
[22:21:48] E/direct - Error: Could not find update-config.json. Run 'webdriver-manager update' to download binaries.
Hope that helps!
希望有帮助!
回答by lehieusoftware
When I installed Java and updated Java Path in Windows 10, the problem was resolved.
当我在 Windows 10 中安装 Java 并更新 Java Path 时,问题解决了。

