对于控制器,我测试了每个动作,例如:
describe PostsController do
describe "GET #new"
describe "GET #edit"
describe "DELETE #destroy"
...
如何组织我的集成/功能测试?遵循控制器结构或用户故事或其他什么?我正在使用水豚。
对于控制器,我测试了每个动作,例如:
describe PostsController do
describe "GET #new"
describe "GET #edit"
describe "DELETE #destroy"
...
如何组织我的集成/功能测试?遵循控制器结构或用户故事或其他什么?我正在使用水豚。
我首先根据动作来组织它。然后在每个动作中,我在好用户和坏用户之间组织我的测试。我相信有人会更深入,但那是我的两分钱。
好用户 - 做所有事情的用户,将正确的信息放入表单等。
不良用户 - 潜在的黑客,或只是将不良信息插入您的网站的人。
使用 Capybara 时,通常希望为每个用户故事创建一个文件,因为这样可以更轻松地重用任何背景设置。
将它们保持小(不超过 3 或 4scenario
个方块)通常是有益的,否则它们可能难以遵循。
如果您需要一种组织测试代码的方法,以便不将集成测试与 UI 耦合,您可以尝试使用Capybara Test Helpers,它允许您封装与组件和页面的交互。