用 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
http://blog.hashrocket.com/posts/test-with-a-sign-in-backdoor http://robots.thoughtbot.com/post/37907699673/faster-tests-sign-in-through-the-back-door
#7 楼 @knwang 谢谢!我看了一下,确实是一个好办法。
mark mark
记录 记录