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-update
node_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
'prosource' 카테고리의 다른 글
Create React App에서 이젝트는 어떤 역할을 합니까? (0) | 2023.02.16 |
---|---|
대응: 부모 컴포넌트는 상태 변화에 따라 변경되지 않은 아이도 모두 재생성 (0) | 2023.02.16 |
WordPress에서 AJAX 요청 여부를 감지하는 방법은 무엇입니까? (0) | 2023.02.16 |
JSON 데이터로 HIVE 테이블을 만드는 방법은 무엇입니까? (0) | 2023.02.16 |
Wordpress wp-config 환경 변수 사용 (0) | 2023.02.16 |