0

使用 webdriverIO,我试图在场景之间关闭/退出 chrome 浏览器。这是我在 conf 文件中的内容:

  afterScenario: function (scenario) {
        console.log("afterScenario quit browser");
        browser.Close();
        ;
    },

有没有办法在使用 wdio 的每个场景之后关闭浏览器或 chromedriver?

谢谢

4

2 回答 2

1

我们反其道而行之。在需要时使用以下命令重新启动新的浏览器/chrome 会话作为部分场景:

const status = browser.status();
if(status.value.ready){
        browser.reload();
}

而且也只是补充。browser.close()用作 windowHandles 的一部分。browser.end()是可用于关闭浏览器的一种,但不幸的是,它仅在独立模式下受支持。

于 2019-12-16T17:15:15.250 回答
1

每个 WebdriverIO 进程都会打开一个新会话 ( browser.sessionId)。因此,您可能正在寻找reload()函数。

afterScenario: function (scenario) {
  console.log("After scenario, reload session!");
  browser.reload();
},

!注意:对于运行较新wdio-v5版本的人,相应的 API 命令是reloadSession

于 2019-12-16T17:17:09.973 回答