【发布时间】:2014-09-18 20:09:33
【问题描述】:
我有两个模态出现在特定情况下。我想要一个执行实例的测试,并检查模态是否可见,另一个假设模态可见的测试,然后在模态内部采取行动。
假设这是可能的,在第二次测试中,如何在块之前通过 Rspec 将模态设置为可见?我意识到模态不必为了我要使用它的组件形式,但我想这样做是因为我正在运行一个集成测试:
- 用户看到模态
- 用户以模态方式填写表单
- 如果用户错误填写表单,模态仍然可见(即未提交表单)
- 如果用户正确填写表单,模态将变为不可见(即表单提交)
#3/#4 中的底层页面 URL 是相同的,这就是为什么模式可见性是我能想到的唯一测试的原因(我还将测试是否存在错误消息,但在这种情况下,它是碰巧我收到了一条错误消息并且表单仍然提交,所以我有点偏执)。
【问题讨论】:
-
今天你的单独测试是什么样的?编写 before 块是一个抽象术语,使您的测试 DRY。在您看到代码中有重复之前,您不需要编写这些代码,因此让您的测试使用尽可能多的代码,然后您可以重构。
-
我没有第二组测试,因为......这就是这个问题。第一组是手动的,因为我还需要整理一些 facebook 集成有趣的业务
标签: twitter-bootstrap ruby-on-rails-4 rspec capybara