我的rails 应用程序中有一个名为reports的控制器。此控制器有 4 或 5 个(报告)操作,而不是一个非常大的文件。
我正在使用迷你测试来测试我的应用程序。此控制器的测试文件
(reports_controller_test.rb)
太大。我只想分解每个报告的测试文件,以便我可以分别为每个报告编写测试。我真的可以将我的1 个迷你测试文件拆分为多个测试文件吗?
我的rails 应用程序中有一个名为reports的控制器。此控制器有 4 或 5 个(报告)操作,而不是一个非常大的文件。
我正在使用迷你测试来测试我的应用程序。此控制器的测试文件
(reports_controller_test.rb)
太大。我只想分解每个报告的测试文件,以便我可以分别为每个报告编写测试。我真的可以将我的1 个迷你测试文件拆分为多个测试文件吗?
我知道这个问题有点老了,但是 Minitest 仍然被大量使用,所以我希望这对任何人都有用,因为我有点困惑。
在很多情况下,分解文件是您应该做的事情。如果新文件与其他文件具有相同的类名,那么我们将看到 Malik 报告的行为(文件被合并)以及 @framauro13 谈到的限制。使用这种方法,您将只有一种设置方法可用于所有文件。
真正有意义的是拥有完全隔离的测试文件。所以在这种情况下,我们必须打破在测试文件的类名中指明控制器的约定,指明我们要测试的控制器。可以这样做:
class MyCustomName < ActionController::TestCase
tests Some::Namespace::TheController
...
end
class OtherCustomName < ActionController::TestCase
tests Some::Namespace::TheController
...
end
更多信息可以在“自动推断控制器”部分中找到。