我使用jruby-1.7.0和测试框架工作Test :: Unit :: TestCase。现在我更新了一些导致我使用MiniTest :: Test进行测试的宝石,所以我也升级到了jruby-1.7.13。我也有一个rake任务,用java * .class文件而不是ruby * .rb文件构建我的gem。现在很多东西不再像'rake test'那样工作,或者需要来自irb的“my_gem_xyz”,得到像load error和ArrayIndexOutOfBoudsException这样的错误。我安装了rvm以在红宝石之间切换。
如何在我自制的宝石中使用* .class文件,就像之前在jruby-1.7.0下使用的那样? (如果我在gem中包含* .rb文件,它似乎工作正常)
前段时间我尝试过使用jruby-1.7.4,但也因类似的原因失败了(当时我还是使用了Test :: Unit :: TestCase,所以测试帧的工作不是问题)
有什么想法吗?
谢
答案 0 :(得分:0)
我找到了一个令人惊讶的解决方案。我用jruby版本1.7.0的jrubyc编译了* .rb类。这导致测试因加载错误而失败。我必须使用jrubyc版本1.7.13编译所有ruby类,我还构建了宝石。
更新
'rake test'仍然无法解决像Mocha :: ExpectationError这样的错误:意外调用:...
什么有效是使用指定测试文件和测试名称的测试选项(也与reg.exp。一样)
rake test TEST = test / test_bla_bla.rb TESTOPTS =“ - name = / test_should_read / -v”
我感觉随机种子参数的随机化会导致问题。我如何影响种子参数?
更新
看起来测试套件中的测试太多,MiniTest无法处理。在某些情况下,我可以使用TESTOPTS开关在最多35个测试中运行大约10个测试。如果我使用'rake test'在我的测试库中运行所有测试,我总是会失败。对我来说这看起来像个错误。有人可以提供帮助吗?