Rails Cucumber Devise 测试的 session 丢失问题

daqing · 2011年12月08日 · 最后由 johnsonz 回复于 2012年02月04日 · 3068 次阅读

不知道大家有没有遇到这个问题,就是用 cucumber 测试用户的登入和退出,会遇到 session 丢失的问题。

例如,我想测试,在用户已登录的情况下,页面上应该显示退出链接。

@javascript
Scenario: I should see sign out link when logged in
  Given an user exists with nickname: devin
    And I have logged in as devin
    And I am on the homepage
    Then I should see devin
      And I should see 退出

And I have logged in as devin这一行,是通过模拟用户登录实现的,就是说,通过访问登录页面和填入相应信息来登录。

问题就在于,明明这一步登录成功了,等跳转回到首页,页面依然是未登录状态,真的很奇怪。

大家有没有什么思路?

另外,是不是需要弄一个 BDD/TDD 节点?

问题找到了,原来用 click_on 不太好,替换成相应的 click_link/click_button 就可以了。

半年前遇到过,略忘了是怎么解决的了。 mark 一下。 cucumber 这类接口微小差异,作用极大差异的地方不少,用着还是挺有点累的

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