prosource

STS IDE -> update-config.json을 찾을 수 없습니다.

probook 2023. 2. 16. 21:51
반응형

STS IDE -> update-config.json을 찾을 수 없습니다.

현재 Protractor v.5.1, Node.js v.6.10.0을 보유하고 있습니다.

모든 프로젝터 테스트는 윈도 콘솔에서 작동하지만 STS IDE에서 실행하려고 하면 다음 오류가 나타납니다.물론 '웹드라이버-매니저 업데이트'를 했지만 전혀 도움이 되지 않는다.이 문제를 해결할 방법을 아는 사람 있나요?

'다이렉트 커넥트'를 사용하는 경우와 사용하지 않는 경우의 오류는 다음과 같습니다.

[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

또는

[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

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 () {},
},

경로 node_modules/protractor/node_modules/webdriver-manager에는 selenium 폴더가 없지만 패키지는 있습니다.webdriver-update: webdriver-manager update를 추가한 json.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

사용하시는 것 같거나directConnect또는 를 사용하여 기동합니다.local드라이버 프로바이더(미사용)seleniumAddress또는directConnect)를 참조해 주세요.뛰어가야 해webdriver-manager update.

이전에는 스탠드아론이나 도마뱀붙이를 다운로드하지 않는 추가 플래그가 있었습니다.webdriver-manager update --standalone false --gecko false로컬 드라이버 프로바이더 경유로 기동하는 경우는, 이 문제가 발생하지 않게 되었습니다.셀레늄 스탠드아론 항아리 파일이 필요합니다.

package.json의 스크립트를 사용하여 실행할 수 있습니다.예를 들어 다음과 같습니다.

"scripts": {
  "webdriver-update": "webdriver-manager update"
}

다음으로 이 작업을 수행합니다.npm run webdriver-update바이너리가 있는지 어떻게 확인합니까?프로젝트에서 다음 페이지로 이동합니다.node_modules/protractor/node_modules/webdriver-manager/selenium/여기서부터가,update-config.json다운로드한 바이너리를 찾을 수 있습니다.

다음과 같이 업데이트를 시도할 수 있습니다.node_modules/protractor:

$ ./node_modules/protractor/bin/webdriver-manager update

프로젝트 폴더에서 npx 명령을 사용하여 webdriver-manager를 실행합니다.

npx webdriver-manager update

MacOS에서는 seleniumAddress를 protractor 설정 파일에 추가하여 이 오류를 해결했습니다(이전에는 directConnect를 사용했으므로 코멘트 아웃).

// directConnect: true,
// baseUrl: 'http://localhost:4000/',
seleniumAddress: 'http://localhost:4444/wd/hub/',

이제 다음을 실행하여 Protractor 서버를 시작합니다.$ webdriver-manager start

다른 터미널 창에서 다음을 사용하여 테스트를 시작합니다.$ ng e2e

이 명령어를 실행하면 수정됩니다.npm run webdriver-updatenode_driver 섹션의 webdriver를 갱신합니다.node_modules/protractor.

이 두 줄이 주범입니다.그 명령어를 실행해 보면 문제가 해결될 것입니다.

[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.

도움이 됐으면 좋겠네요!

npx webdriver-manager update 명령을 직접 실행했습니다.

\node_protractor\bin이 예상대로 작동하기 시작했습니다.

e2e 및 run 명령어 내의 위의 폴더로 이동합니다.

Windows 10에서 Java를 설치하고 Java Path를 업데이트하자 문제가 해결되었습니다.

저 같은 경우에는

npm run webdriver-manager update

는 '''만''app\node_modules\webdriver-manager andapp\node_modules\protractor\node_modules\webdriver-manager\실행하지 않으면안 되었다

npx webdriver-manager update

에 inside inside inside app\node_modules\protractor\node_modules\webdriver-manager\.

또 다른 솔루션은 다음 스크립트입니다.

"postinstall": "node ./node_modules/protractor/node_modules/webdriver-manager update"

이것으로 node_modules/protractor/bin/webdriver-manager 업데이트를 더 진행할 수 있습니다.

언급URL : https://stackoverflow.com/questions/42426549/protractor-in-sts-ide-could-not-find-update-config-json

반응형