【问题标题】:webdriver.io afterscenario close browser now workingwebdriver.io afterscenario 关闭浏览器现在工作
【发布时间】:2019-12-16 16:53:00
【问题描述】:
使用 webdriverIO,我试图在场景之间关闭/退出 chrome 浏览器。这是我在 conf 文件中的内容:
afterScenario: function (scenario) {
console.log("afterScenario quit browser");
browser.Close();
;
},
有没有办法在使用 wdio 的每个场景之后关闭浏览器或 chromedriver?
谢谢
【问题讨论】:
标签:
selenium
selenium-chromedriver
webdriver-io
wdio-v4
【解决方案1】:
每个 WebdriverIO 进程都会打开一个新会话 (browser.sessionId)。因此,reload() 函数可能是您正在寻找的。p>
afterScenario: function (scenario) {
console.log("After scenario, reload session!");
browser.reload();
},
!注意:对于运行较新的wdio-v5 版本的人,对应的API 命令是reloadSession。
【解决方案2】:
我们反其道而行之。在需要时使用以下命令重新启动新的浏览器/chrome 会话作为部分场景:
const status = browser.status();
if(status.value.ready){
browser.reload();
}
而且也只是添加。 browser.close() 用作 windowHandles 的一部分。 browser.end() 是可以用来关闭浏览器的,但不幸的是它只支持独立模式。