如果 gem 具有 rails 依赖项,您认为以独立运行或在 rails 项目下运行的方式编写 gem 测试更好吗?
问问题
405 次
2 回答
6
gem 应该是一段独立运行的代码。否则它是应用程序的一部分,所以测试也应该独立创建。通过这种方式,其他人(假设)也可以执行测试。如果测试依赖于您的应用程序,其他人无法测试您的 gem。
此外,当您想要测试您的 gem 时,它不应该因为您的应用程序失败而失败。在您的 gem 通过测试后,您可以测试应用程序,知道您的 gem 运行良好(假设您测试了所有内容)。
gem 是否依赖于 Rails 都不是问题,因为 Rails 也已经过测试(您可以假设它工作正常)。因此,这些依赖项不会(/应该)影响您的 gem。
于 2010-01-18T16:26:03.910 回答
0
我会说这取决于 gem 需要的依赖类型。例如。如果它只是 ActiveRecord,则很容易将其包含到您的测试套件中。在更复杂的情况下,您总是可以模拟一些需要的功能。在非常复杂的情况下,创建一个测试应用程序总比没有好(IMO)。
于 2010-01-18T15:12:50.963 回答