如何从控制台访问Rails测试助手代码?

时间:2012-02-06 17:17:00

标签: ruby-on-rails testcase

使用vanilla ActiveSupport :: TestCase,我添加了几个帮助方法,在test / test_helper.rb中生成测试模型对象。在这个文件中重新打开包含帮助方法的ActiveSupport :: TestCase。

现在假设我在Ruby控制台(或pry,加载了Rails环境),我想摆弄这些测试方法。我可以加载文件:加载“test / test_helper.rb”但我无法创建一个TestCase实例,让我可以访问这些测试方法来使用它们:

[4] pry(main)> tc = ActiveSupport::TestCase.new
ArgumentError: wrong number of arguments (0 for 1)
[5] pry(main)> tc = ActiveSupport::TestCase.new(1)
TypeError: 1 is not a symbol
[6] pry(main)> tc = ActiveSupport::TestCase.new(:unit)
ArgumentError: uncaught throw :invalid_test

我已经徒劳地尝试跟踪源文件中的痕迹痕迹,找到TestCase初始化方法,这样我就可以弄清楚它在这里所坚持的内容。

有人可以帮助我如何思考这样的问题并找出解决方法吗?

2 个答案:

答案 0 :(得分:1)

从此链接复制:https://gist.github.com/1297510

在您的终端类型上:

RAILS_ENV=test pry

答案 1 :(得分:0)

对于您的具体情况,在我的ActiveSupport版本(3.22.2.8)中,我能够执行以下操作:

ActiveSupport::TestCase.new('some_string')

总的来说,有几种选择:

  • 使用pry之类的调试器可以帮助您解决问题。
  • 通过gem open activesupport查找源代码,或使用gem environment
  • 查找您的宝石的安装位置
  • 大多数宝石都是开源的,很容易在github.com上找到,等等。请注意你正在查看正确的版本。