是否可以设置Travis来运行多种语言的testing?

我有一个rails项目,并通过Karma为我的JavaScripttesting( Jasmine )运行testing

.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定义为另一种语言,并在构build虚拟机上安装业务?

在Travisconfiguration文件上还不可能有几种语言。

另一方面,所有的环境都运行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群组的旧线程中find帮助

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.ymllanguage键被设置为node ,Travis将在构build开始时运行nvm install 0.12 。 同样,对于Ruby项目,Travis将在构build开始时运行rvm use 2.2.2 --install --binary --fuzzy

我已经成功地在Bash构build中运行这两个命令