测试 Cucumber+Capybara 做自动化测试登录的问题

johnlu · 2013年01月16日 · 最后由 jefffreylam 回复于 2013年01月31日 · 4286 次阅读

用 Cucumber+Capybara 做自动化测试; 但是首先要进行登录,那么在写 Scenario 时每个 Scenario 都要有登录的步骤,如果有 100 个 Scenario 的话,就要登录 100 次了;

有没有什么方法可以只登录一次,其它的 Scenario 就不用登录了呢?

我尝试用 backgrounds,但是实际上也是执行每个 Scenario 前都会执行 backgrounds 的步骤;用 hooks 也一样;

不要用 cucumber, 用 rspec 就好了。

#1 楼 @gazeldx 用 Rspec 怎么实现我的需求呢?

写一个 given ,一个 step, 需要每次都登就每次都登呗,有问题么?不然你可以去看看 cap 的 session 能不能搞定

#3 楼 @doun 谢谢你的指点,我看到 Cucumber 的资料也提到,不建议 Scenario 之间相关连。但是每个 Scenario(用例)都登录一次,时间就要多许多。

Cucumber 做自动化测试的最大问题是不直接,有过度设计的感觉。用 rspec + Capybara 就好多了。程序员们更愿意用!

#5 楼 @gazeldx 应该说各有各的好处,谢谢指点。有空去看一下 Rspec。 但我个人认为 Rspec 也不能满足我的要求. 换句话说,就是所有的用例都只用一个登录 Session

#7 楼 @knwang 谢谢!我看了一下,确实是一个好办法。

记录 记录

需要 登录 后方可回复, 如果你还没有账号请 注册新账号