[英]React/Babel: Components not rendering only on CircleCI
我最近將帶有React-Redux和Babelify(用於ES6)的ReactJS添加到了Rails應用程序中。 黃瓜測試在本地通過,但沒有通過CircleCI。 到目前為止,這是我所知道的:
我如何才能使我的React組件的黃瓜測試通過CircleCI?
# no circle.yml
# gemfile
gem 'capybara-webkit'
gem "chromedriver-helper"
gem 'capybara-screenshot'
gem 'selenium-webdriver'
# package.json
"dependencies": {
"browserify": "~> 10.2.4",
"browserify-incremental": "^3.0.1",
"lodash": "^3.10.1",
"react": "~>0.13.3",
"react-redux": "~>3.1.0",
"redux-thunk": "~>1.0.0",
"babelify": "~>6.3.0"
}
# support/env.rb
Capybara.register_driver :chrome do |app|
Capybara::Selenium::Driver.new(app, browser: :chrome)
end
Capybara.javascript_driver = :chrome
通過SSH進入CircleCI測試后,我的同事發現Object.assign
未定義。 顯然,CircleCI使用的Chrome版本比我們測試時使用的版本要舊,並且Babel不會自動填充該ES6方法(請參閱注釋以獲取更多信息)。
他用lodash的_.extend()
代替了Object.assign()
,並且測試處處都是綠色。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.