前提・実現したいこと
https://hackernoon.com/a-guide-to-tdd-a-react-redux-todolist-app-part-1-b8a200bb7091
上記のWEBサイトのチュートリアルを使って、React.jsでtodo-listを作成しています。この記事の後半で、環境構築している中でe2e-testを実行しました。その作業の中でseleniumが起動しないというエラーが発生しました。下記がエラーメッセージになります。
ERROR: Cannot define class using reflection chrome at new RuntimeError (/Users/hajimenagasaka/my-react-todolist/node_modules/webdriverio/build/lib/utils/ErrorHandler.js:144:12) at Request._callback (/Users/hajimenagasaka/my-react-todolist/node_modules/webdriverio/build/lib/utils/RequestHandler.js:316:39) at Request.self.callback (/Users/hajimenagasaka/my-react-todolist/node_modules/webdriverio/node_modules/request/request.js:186:22) at emitTwo (events.js:126:13) at Request.emit (events.js:214:7) at Request. (/Users/hajimenagasaka/my-react-todolist/node_modules/webdriverio/node_modules/request/request.js:1163:10) at emitOne (events.js:116:13) at Request.emit (events.js:211:7) at IncomingMessage. (/Users/hajimenagasaka/my-react-todolist/node_modules/webdriverio/node_modules/request/request.js:1085:12) at Object.onceWrapper (events.js:313:30) npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! my-react-todolist@0.1.0 e2e-tests: wdio npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the my-react-todolist@0.1.0 e2e-tests script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above. npm ERR! A complete log of this run can be found in:
該当のソースコード
App.jsの中身です。
import React from 'react'; const App = () => ( <div>My App</div> ); export default App;
test.jsの中身
test.js
1const expect = require('chai').expect; 2 3describe('TodoList App', () => { 4 it('Should load with the right title', () => { 5 browser.url('http://localhost:3000/'); 6 const actualTitle = browser.getTitle(); 7 8 expect(actualTitle).to.eql('Todo List'); 9 }); 10}); 11
試したこと
seleniumサーバーが起動しないということだったので、seleniumのテストを行いましたが、それもエラーが発生しました。下記がそのエラーメッセージになります。
selenium
1Selenium 2.0/webdriver protocol bindings implementation with helper commands in nodejs. 2 3For a complete list of commands, visit http://webdriver.io/docs.html. 4 5====================================================================== 6 7ERROR Couldn't find a running selenium server instance on [object Object]/Users/hajimenagasaka/node_modules/chainit/index.js:140 8 9throw err; 10^ 11 12Error: [init()] <= Couldn't connect to selenium server at makeError (/Users/hajimenagasaka/node_modules/webdriverjs/lib/utils/makeError.js:9:17) 13 14at RequestHandler.<anonymous> (/Users/hajimenagasaka/node_modules/webdriverjs/lib/utils/RequestHandler.js:177:25) 15 16at self.callback (/Users/hajimenagasaka/node_modules/request/request.js:122:22) at emitOne (events.js:116:13) 17 18at Request.emit (events.js:211:7) 19 20at ClientRequest.self.clientErrorHandler (/Users/hajimenagasaka/node_modules/request/request.js:231:10) 21 22at emitOne (events.js:116:13) 23 24at ClientRequest.emit (events.js:211:7) 25 26at Socket.socketErrorListener (_http_client.js:387:9)
補足情報(FW/ツールのバージョンなど)
npm-v :5.6.0
yarn-v :1.5.1
os -v :10.12.6
下記package.jsonの中身になります。
package.json { "name": "my-react-todolist", "version": "0.1.0", "private": true, "dependencies": { "chrome": "^0.1.0", "eslint-plugin-flowtype": "^2.46.1", "jest-cli": "^22.4.3", "react": "^15.6.1", "react-dom": "^15.6.1", "selenium": "^2.20.0", "v": "^0.3.0", "webdriver.js": "^0.1.0", "webdriverjs": "^1.7.5" }, "devDependencies": { "chai": "^4.1.2", "enzyme": "^2.9.1", "eslint": "^3.19.0", "eslint-config-airbnb": "^15.0.1", "eslint-plugin-import": "^2.6.1", "eslint-plugin-jsx-a11y": "^5.1.0", "eslint-plugin-react": "^7.1.0", "react-scripts": "1.0.7", "react-test-renderer": "^15.6.1", "selenium-standalone": "^6.5.0", "wdio-dot-reporter": "0.0.8", "wdio-mocha-framework": "^0.5.13", "wdio-selenium-standalone-service": "0.0.9", "webdriverio": "^4.8.0" }, "scripts": { "selenium-setup": "selenium-standalone install", "selenium-start": "selenium-standalone start", "e2e-tests": "wdio", "e2e-tests-watch": "wdio wdio.conf.js --watch", "start": "react-scripts start", "build": "react-scripts build", "test": "react-scripts test --env=jsdom", "eject": "react-scripts eject", "start":"selenium-standalone start", "selenium": "selenium-standalone", } }
ここにより詳細な情報を記載してください。

あなたの回答
tips
プレビュー