在ruby文件上测试travis-ci会返回rake aborted错误

时间:2016-09-03 04:05:25

标签: ruby travis-ci

受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?

1 个答案:

答案 0 :(得分:2)

Travis基本上只是一台与其他电脑一样的电脑。它所说的是默认情况下,它将在该回购中运行rake,假设测试所在的位置。

事实上,如果您要克隆自己的回购并自己运行rake,那么您将获得与报告相同的输出。

因此要么提供另一个命令来运行Travis,要么安装一个将在调用rake时运行的测试(可能在你的Rakefile中)。

还要注意你的" Ruby文件"并不真正包含测试本身,只是一些代码。通常,如果您要使用Rspec,测试将断言诸如assert_equal(2, sum)expect(sum).to eq(2)之类的内容。你可以查看" ruby​​测试框架"如果您需要更多相关信息。