我正在编写RSpec测试,但在不同网站上阅读到的意见不同。当处理spec/controllers和spec/models目录时,RSpec的目录结构很清晰,但我收到的关于测试视图的信息存在冲突。
我想把这些测试放在spec/integration/目录中,但我看到有人说它应该在spec/integration下,另一本书则说是spec/requests。这是否重要?
为了进一步复杂化情况,我读到的关于测试文件实际命名的信息也存在冲突!例如,如果我有一个被称为 "people" 的控制器/模型/视图目录(我使用haml),我应该像这样命名文件:
spec/integration/people.html.haml_spec.rb
然而,另一本书建议使用:
spec/requests/people_spec.rb
请解释一下RSpec的命名规范,并说明为什么我应该给视图测试命名特定名称,以及将其放置在spec/integration或spec/requests下是否重要。感觉自己像在摸石头过河。任何帮助都将不胜感激。
我想把这些测试放在spec/integration/目录中,但我看到有人说它应该在spec/integration下,另一本书则说是spec/requests。这是否重要?
为了进一步复杂化情况,我读到的关于测试文件实际命名的信息也存在冲突!例如,如果我有一个被称为 "people" 的控制器/模型/视图目录(我使用haml),我应该像这样命名文件:
spec/integration/people.html.haml_spec.rb
然而,另一本书建议使用:
spec/requests/people_spec.rb
请解释一下RSpec的命名规范,并说明为什么我应该给视图测试命名特定名称,以及将其放置在spec/integration或spec/requests下是否重要。感觉自己像在摸石头过河。任何帮助都将不胜感激。
spec/views/user.html.erb
,而应该是spec/views/user.html.erb_spec.rb
吗?此外,spec/views/user.html.erb
似乎是一个奇怪的例子,spec/views/users/index.html.erb
不是更合理吗? - Rob d'Apiceuser_scopes_spec.rb
和user_my_feature_name_spec.rb
? - Евгений Масленков