私は約500ステップのシナリオを持ち、私のレールアプリ用のキュウリテストスイートを持っています。キュウリのテストスイートがTravisのために遅すぎる
Travis-CIを使用するようにgithubリポジトリを設定しました。これは、次のように.travis.yml
を使用しています。
language: ruby
rvm:
- "1.9.2"
script:
- RAILS_ENV=test bundle exec rake db:migrate --trace
- bundle exec cucumber -f progress -r features features/cards/base_game
- bundle exec cucumber -f progress -r features features/cards/basic_cards
- bundle exec cucumber -f progress -r features features/cards/intrigue
- bundle exec cucumber -f progress -r features features/cards/seaside
- bundle exec cucumber -f progress -r features features/cards/prosperity
- bundle exec cucumber -f progress -r features features/cards/interactions
before_script:
- cp config/database.travis.yml config/database.yml
- psql -c 'create database dominion_test' -U postgres
私はすべてのケースを実行するためにbundle exec cucumber
を実行した場合トラヴィスがメモリ不足に投げていたように私はキュウリの実行を分割しています。
しかし、私の最近のプッシュは、すべてのテストを実行するために50分以上かかるトラビスタスクを生成し、したがって殺されました。私はその多くのシナリオに不合理であるだけですか、実行をスピードアップするためにできることは何ですか?
編集:シナリオが重要である場合は、シナリオでGUIをテストしないことを明確にする必要があります。彼らはカードゲームサーバーのルールをテストしているので、モデルメソッドを直接呼び出します。