我想在我的网站上设置一个'记住我'的cookie,其中包含2周的期限,而不是永久性的,并且想要测试它。
到目前为止,我对此的尝试都没有成功。
这是我的黄瓜情景;
Scenario: A user logs in with the remember me checkbox ticked and then remains inactive for more than 2 weeks
Given I am a registered user
When I log in with the remember me checkbox ticked
And more than 2 weeks passes
And I visit the dashboard page
Then I should be logged out
我对第3步(重要的一步)的步骤定义如下
When /^more than (\d+) weeks passes with no activity$/ do |num|
Timecop.freeze(Time.now + num.to_i.weeks + 1.day)
end
对没有“记住我”的用户进行类似的会话过期测试工作正常,但这取决于我的用户表中的last_request_at列。此测试取决于浏览器(在本例中为Capybara)使我的auth_token cookie到期。有没有办法做这个测试?