我应该在测试文件中创建助手方法吗?

我应该在测试文件中创建助手方法吗?

问题描述:

它是一个很好的做法在测试文件创建的helper方法,如果这个方法是仅特定于该文件中的测试? 例如,在:我应该在测试文件中创建助手方法吗?

测试/集成/ post_index_test.rb

一些测试我已经定义的辅助方法,其仅在该文件中的测试是适用之间:

require 'test_helper' 

class PostIndexTest < ActionDispatch::IntegrationTest 
    test 'some test' do 
    this_file_specific_helper_method 
    end 

    def only_this_file_specific_helper_method 
    # method body 
    end 
end 

我可以这样做,还是应该避免。如果不是,我应该在哪里放这个方法。在通用

测试/ test_helper.rb中

文件?我应该创建一个单独的文件吗?或者,也许我的设计有问题,我根本不需要这种方法?

+0

我希望有人回答,因为我已经创建了一个基本要求我公司在每个页面的登录访问(但在登录页)中使用的应用程序这个问题,我想知道是否有某种方式来写一个辅助方法,只是呼叫登录更容易。 – MageeWorld

+0

你可以在你的控制器使用before_action过滤器来检查,如果用户登录,如果没有重定向到登录页面的辅助方法。我的问题只是关于测试助手方法。 – Kammil

+0

等等都是我的.. – MageeWorld

是的,你可以用你的测试文件中的辅助方法。我不明白为什么不。如果该方法执行,你将使用特定的测试中多次使用专用helper方法将要走的路的例程。