【问题标题】:how to write remember me feature in Rspec-rails?如何在 Rspec-rails 中编写记住我的功能?
【发布时间】:2019-05-02 16:01:00
【问题描述】:

我是用巫术gem完成登录功能的,我用过“记住我”的功能。但是我不知道如何用Rspec编写测试代码。我找到了Capybara gem但不知道如何使用它。
我要测试的是当我选中记住我框登录时,然后使用我上次登录的管理员用户名和密码注销,如果没有,则没有任何价值。
谁能给我一些提示吗?非常感谢。

【问题讨论】:

标签: ruby-on-rails rspec capybara rspec-rails sorcery


【解决方案1】:

您可以进行 2 次测试。我不确切知道您的网站是如何工作的(或者记住我功能是如何工作的),所以这里是基本的想法。

测试 1:记住

  1. 访问主页
  2. 勾选“记住我”
  3. 填写表格
  4. 点击登录
  5. 点击退出
  6. 访问主页
  7. 点击登录
  8. expect(page).to have_content "您已登录"

测试 2:不记得

  1. 访问主页
  2. 填写表格
  3. 点击登录
  4. 点击退出
  5. 访问主页
  6. 点击登录
  7. expect(page).to have_content "You must enter a name and password"

要使用 Capybara 访问主页,请使用 visit:

visit '/'

选中一个框:

check 'remember_me'

您需要填写表格并点击按钮。

这里是水豚参考:https://github.com/teamcapybara/capybara#using-capybara-with-rspec

【讨论】:

    猜你喜欢
    • 2011-12-01
    • 1970-01-01
    • 2015-04-23
    • 1970-01-01
    • 2018-09-05
    • 1970-01-01
    • 2011-09-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多