【发布时间】:2025-11-27 22:40:01
【问题描述】:
我有一段代码要测试,它没有包含在方法中。它只是在 Ruby 类中独立存在。
begin
# Do stuff - bunch of Ruby code
end
这不是 Rails 应用程序。它是一个独立的 Ruby 类。我不想在我的 rspec 测试中执行整个 begin end 语句。你如何测试这样的东西?应该使用模拟/存根来完成吗?我问了几个人,但他们也不知道答案。
【问题讨论】:
-
如果你不想测试你的方法的一部分,那么你的方法应该分成两个(或更多)方法。
-
哦,这根本不是一个方法。它只是一个包含代码的文件末尾的 begin end 语句。所以,它就像:开始一些 Ruby 代码 end
-
如果你不想让某样东西成为一个代码单元,就不要让它成为一个代码单元。
-
我明白我误解了你的解释。在这种情况下,将其包装在一个方法中!
-
@Sait:这听起来不像单元测试适合这里。您基本上是在尝试在这里编写某种集成测试。如果它不是一个单元,则无法对其进行单元测试。