Cucumber RestartBrowserBetweentTests不会重新启动浏览器,只会将其关闭

Cucumber RestartBrowserBetweentTests不会重新启动浏览器,只会将其关闭,cucumber,protractor,cucumberjs,Cucumber,Protractor,Cucumberjs,我试图在一个功能文件中运行多个测试(多个场景)。在每个场景之间,我需要重新启动浏览器(或者至少使用一个新窗口)。我尝试设置restartbrowserbetweetests:true,但由于某些原因,它只会导致浏览器在第一个场景后关闭,而不会打开新的场景。我在用量角器 这是我的conf文件: exports.config = { specs: [ 'wordAssessTimer.feature' ], // Capabilities to be passed to th

我试图在一个功能文件中运行多个测试(多个场景)。在每个场景之间,我需要重新启动浏览器(或者至少使用一个新窗口)。我尝试设置
restartbrowserbetweetests:true
,但由于某些原因,它只会导致浏览器在第一个场景后关闭,而不会打开新的场景。我在用量角器

这是我的conf文件:

exports.config = {

  specs: [
    'wordAssessTimer.feature'
  ],

  // Capabilities to be passed to the webdriver instance.
  capabilities: {
    'browserName': 'firefox'
  },

  // Framework to use. 
  framework: 'cucumber',

  allScriptsTimeout: 300000,

  // Options to be passed to cucumber
  cucumberOpts: {
        require: ['steps.js', 'reporter.js'],
        format: 'pretty',
        strict: true
      },

  restartBrowserBetweenTests: true
};
这是我的软件包文件:

{
  "name": "wordAssessTimer",
  "version": "",
  "description": "",
  "main": "conf.js",
  "dependencies": {
  },
  "devDependencies": {
    "cucumber": "0.4.9",
    "protractor": "2.1.0"
  },
  "scripts": {
  },
  "author": "",
  "license": ""
}

出于保密原因,我无法发布步骤或功能文件,但是没有任何东西可以阻止打开新浏览器

从您的问题中,我发现新的浏览器窗口或浏览器选项卡也应该足够了。我不建议您关闭浏览器,因为用户可能打开了一些选项卡,关闭浏览器时会丢失数据。例如,如果用户打开了一个浏览器选项卡,其中他写了一篇论坛帖子,并且已经写了2000个字符,那么当浏览器关闭时,他将丢失在那里输入的所有数据。我建议使用javascript函数,这是一个不那么令人沮丧的解决方案。根据浏览器的不同,javascript函数将打开一个新选项卡或一个新的浏览器窗口。此外,您还可以使用重新加载页面

window.location.href = window.location.href;

从你的问题中,我看到一个新的浏览器窗口或浏览器选项卡也应该足够了。我不建议您关闭浏览器,因为用户可能打开了一些选项卡,关闭浏览器时会丢失数据。例如,如果用户打开了一个浏览器选项卡,其中他写了一篇论坛帖子,并且已经写了2000个字符,那么当浏览器关闭时,他将丢失在那里输入的所有数据。我建议使用javascript函数,这是一个不那么令人沮丧的解决方案。根据浏览器的不同,javascript函数将打开一个新选项卡或一个新的浏览器窗口。此外,您还可以使用重新加载页面

window.location.href = window.location.href;

我在量角器中执行此操作,因此我没有调用window.open on的窗口句柄:/我在量角器中执行此操作,因此我没有调用window.open on的窗口句柄:/