Poltergeist JS/Headless Chrome - 切换到离线模式
Poltergeist JS/Headless Chrome - Switch to offline mode
我正在寻找一个测试,我可以在离线模式之间切换,并在黄瓜测试中途回到在线模式。我可以通过 Chrome 中的 Dev Tools 手动实现这一点,但是有没有一种方法可以使用 Poltergeist JS 或 Headless Chrome.
来自动执行此操作
我知道 page.driver
可以访问,事实上我在另一个测试中用它来设置 cookie 值
Given(/^I set the "([^"]*)" cookie value to "([^"]*)" for the domain "([^"]*)"$/) do |cookieName,cookieValue,cookieDomain|
if "#{DRIVER}" == "headless_chrome"
page.driver.browser.manage.add_cookie name: cookieName, value: cookieValue, domain: cookieDomain
else
page.driver.set_cookie(cookieName, cookieValue, {:domain => cookieDomain})
end
sleep 1
end
除非我遗漏了什么,否则我看不到如何在离线和在线模式之间切换。有人在他们的测试设置中做过或做过这个吗?
当使用带有 Chrome 的 Selenium 作为驱动程序时,您可以使用 network_conditions=
page.driver.browser.network_conditions = { offline: true }
我认为 Poltergeist 没有类似的功能。
我正在寻找一个测试,我可以在离线模式之间切换,并在黄瓜测试中途回到在线模式。我可以通过 Chrome 中的 Dev Tools 手动实现这一点,但是有没有一种方法可以使用 Poltergeist JS 或 Headless Chrome.
来自动执行此操作我知道 page.driver
可以访问,事实上我在另一个测试中用它来设置 cookie 值
Given(/^I set the "([^"]*)" cookie value to "([^"]*)" for the domain "([^"]*)"$/) do |cookieName,cookieValue,cookieDomain|
if "#{DRIVER}" == "headless_chrome"
page.driver.browser.manage.add_cookie name: cookieName, value: cookieValue, domain: cookieDomain
else
page.driver.set_cookie(cookieName, cookieValue, {:domain => cookieDomain})
end
sleep 1
end
除非我遗漏了什么,否则我看不到如何在离线和在线模式之间切换。有人在他们的测试设置中做过或做过这个吗?
当使用带有 Chrome 的 Selenium 作为驱动程序时,您可以使用 network_conditions=
page.driver.browser.network_conditions = { offline: true }
我认为 Poltergeist 没有类似的功能。