我有一种情况,当我使用(使用:selenium驱动程序)多个浏览器和Capybara来测试我的前端。如果不需要Capybara,怎么能关闭其中的一些呢?
答案 0 :(得分:7)
如果使用JavaScript打开选项卡/窗口,则允许JavaScript关闭它们。您可以使用page.execute_script
在Capybara测试中执行JS。
page.execute_script "window.close();"
答案 1 :(得分:7)
答案 2 :(得分:2)
如果您想在每次测试结束后关闭每个窗口,而不是关闭测试结束时的所有窗口,请尝试:
after do
Capybara.current_session.driver.quit
end
答案 3 :(得分:1)
在env.rb文件中插入此代码
After do |scenario|
print "OZONEEEEE"
page.execute_script "window.close();"
# restart Selenium driver
Capybara.send(:session_pool).delete_if { |key, value| key =~ /selenium/i }
end