Railsプロジェクトがあり、JavaScriptテスト( Jasmine )から Karma までのテストを実行しています)
.travis.ymlファイル
language: Ruby
rvm:
- 2.0.0
script:
- Rails_ENV=test bundle exec rake --trace db:migrate test
- karma start --single-run --browsers PhantomJS test/karma/config/unit.js
トラビスはカルマを見つけられないと言って失敗します。 node_jsを別の言語として定義し、ビルドVMにカルマをインストールする方法はありますか?
Travis構成ファイルにいくつかの言語を含めることは まだ不可能 です。
一方、すべての環境 run node.js 。次のスクリプトがそのトリックを実行します。
language: Ruby
rvm:
- 2.0.0
before_script:
- npm install karma
script:
- Rails_ENV=test bundle exec rake --trace db:migrate test
- karma start --single-run --browsers PhantomJS test/karma/config/unit.js
ヘルプは googleグループの古いスレッド にあります
K-Yoの答えは私を正しい方向に動かしましたが、成功には程遠いです。ここに私が必要なものがあります:
最初に私の.travis.yml:
language: Ruby
rvm:
- 2.1.1
before_script:
- psql -c 'create database spokenvote_test;' -U postgres
- cp config/database.travis.yml config/database.yml
- rake db:test_prep
- npm install karma
- npm install karma-jasmine
- npm install karma-coverage
- npm install karma-phantomjs-launcher
- npm install karma-coffee-preprocessor
script:
- bundle exec rspec spec # basic for Ruby
- node_modules/karma/bin/karma start config/karma.conf.js --single-run --browsers PhantomJS
次に、このコードを自分のpackage.jsonにも配置しましたが、必要かどうかはわかりません。
"devDependencies": {
"karma": "~0.12",
"karma-jasmine": "~0.2",
"karma-coverage": "~0.2.6",
"karma-phantomjs-launcher": "~0.1.4",
"karma-coffee-preprocessor": "~0.2.1"
},
最後に、Travisでは大文字と小文字が区別されることを学びました。
'bower_components/jquery/dist/jquery.min.js',
私のkarma.conf.jsでは:
'bower_components/jQuery/dist/jquery.min.js',
.travis.yml
のlanguage
キーがnode
に設定されている場合、Travisはビルドの開始時にnvm install 0.12
を実行します。同様に、Rubyプロジェクトの場合、Travisはビルドの開始時にrvm use 2.2.2 --install --binary --fuzzy
を実行します。
私は Bashビルド で両方のコマンドを実行することに成功しました