受Travis CI的guide启发,对于完全初学者,我想用我的首选语言测试Travis:Ruby。
我创建了一个类似Travis' sample PHP repo的回购。 Here是我尝试进行自己的Travis回购测试。
在该回购中,我有一个.travis.yml
文件,其中包含:
language: ruby
rvm:
- 2.2
- jruby
我想用无效方法运行的ruby文件:
def sum
return "1" + 1
end
sum
然而,当我按下它时,它会返回此错误:
$ rake
rake aborted!
No Rakefile found (looking for: rakefile, Rakefile, rakefile.rb, Rakefile.rb)
当我回去阅读红宝石的travis doc时,有一句话说:
Travis CI默认运行rake来执行测试。请注意 你需要为你的Gemfile添加rake(将它添加到:test组 应该足够了。
这是什么意思?还有什么我需要添加到我的仓库和.travis.yml
进行“成功”的失败测试?好吧,我的上一个问题听起来像是一个悖论,但基本上我想知道如何通过创建一个失败的测试并创建一个像之前PHP test之类的成功测试来测试Travis CI和ruby?
答案 0 :(得分:2)
rake
,假设测试所在的位置。
事实上,如果您要克隆自己的回购并自己运行rake
,那么您将获得与报告相同的输出。
因此要么提供另一个命令来运行Travis,要么安装一个将在调用rake
时运行的测试(可能在你的Rakefile中)。
还要注意你的" Ruby文件"并不真正包含测试本身,只是一些代码。通常,如果您要使用Rspec,测试将断言诸如assert_equal(2, sum)
或expect(sum).to eq(2)
之类的内容。你可以查看" ruby测试框架"如果您需要更多相关信息。