【发布时间】:2019-12-30 22:57:43
【问题描述】:
我有一个功能需要运行超过 100 个场景,第一步是登录我的应用程序。这通常使用Before 钩子和After 钩子来处理,这将使您注销。这使我的测试彼此独立,对我来说通常是个好主意。但是在这种情况下,我只想登录我的应用程序,运行我的所有场景并注销。
我似乎遇到了会话问题,因为在一个场景完成后我被重定向到 about:blank 并且我的会话被终止了。
我已经试过了
class Capybara::Selenium::Driver < Capybara::Driver::Base
def reset!
# Use instance variable directly so we avoid starting the browser just to reset the session
if @browser
begin
#@browser.manage.delete_all_cookies <= cookie deletion is commented out!
rescue Selenium::WebDriver::Error::UnhandledError => e
# delete_all_cookies fails when we've previously gone
# to about:blank, so we rescue this error and do nothing
# instead.
end
@browser.navigate.to('about:blank')
end
end
end
然后我在控制台中收到以下错误
expected not to find xpath "/html/body/*", found ...
所以我的问题是如何完成一个场景,然后只需单击我网站中的另一个链接,然后执行下一个场景
谢谢
【问题讨论】:
标签: ruby session cucumber capybara