Autospec/rspec无法正常工作,做错了什么?

Oli*_*lay 4 ruby rspec

我想知道它是否在StackOverflow上占有一席之地,但由于它与编程有关,我会把它拍掉.

这是我的问题.我是TDD的新手,我喜欢Ruby,所以我采取的明显路径是使用rspec测试内容.为何明显?我在各种截屏视频中看到它,并认为它非常整洁.然后我在某个地方看到了"autospec",并尝试使用它.

所以我安装了gem,使用sudo gem install ZenTest(根据这里的说明)

接下来,我进入我的文件夹,其中包含"digit.rb"和"digit_spec.rb",并启动autospec而不带任何参数.什么都没发生.值得注意的是,我在我的spec文件中有两个测试,并且我可以使用spec命令测试它,但我很高兴使用自动测试...

有任何帮助/指针/文档链接?请?:P

tig*_*tig 5

您需要创建.autotest包含此代码的文件:

Autotest.add_hook :reset do |at|
  at.clear_mappings
  at.add_mapping(/^(.*?)(_spec)?\.rb$/) { |filename, m|
    if m[2]
      filename
    else
      "#{m[1]}_spec.rb"
    end
  }
end
Run Code Online (Sandbox Code Playgroud)

它将文件的默认映射更改为spec

  • 只是添加答案:autospec的默认行为是搜索./lib中的任何文件,并在./spec中查找相应的测试文件.因此,要像我刚才那样"试一试",您需要将您的代码文件放在lib子目录中,并将您的测试文件放在spec子目录中. (4认同)