Selenium Nightwatch.js-使用相同的浏览器会话

Selenium Nightwatch.js-使用相同的浏览器会话,selenium,nightwatch.js,Selenium,Nightwatch.js,我们希望采用Nightwatch.js在浏览器上进行测试,但我们有一个主要的警告:在撰写本文时,Nightwatchjs不支持使用同一浏览器会话运行不同的测试。简言之,这意味着: 创建浏览器会话由Nightwatch模块在函数中从处理 关闭浏览器将对应于该模块终止功能中Selenium操作队列中的delete命令位置 每次测试运行时都会创建一个新的Nightwatch客户端,每次加载不同的测试文件时都会发生这种情况 根据,可以在Selenium中重用当前浏览器会话,而不是打开新窗口 有人在夜

我们希望采用
Nightwatch.js
在浏览器上进行测试,但我们有一个主要的警告:在撰写本文时,Nightwatchjs不支持使用同一浏览器会话运行不同的测试。简言之,这意味着:

  • 创建浏览器会话由Nightwatch模块在函数中从处理
  • 关闭浏览器将对应于该模块终止功能中
    Selenium
    操作队列中的delete命令位置
  • 每次测试运行时都会创建一个新的Nightwatch客户端,每次加载不同的测试文件时都会发生这种情况
根据,可以在Selenium中重用当前浏览器会话,而不是打开新窗口

有人在夜视中解决了这个问题吗?

这是2014年3月31日申请的,目前仍在开放中


另一种方法是通过让Nightwatch将所有不同的文件合并到一个测试套件中来完全避免这个问题,但这似乎比会话问题更难解决…

我想出了一个解决方案,在一个浏览器会话中运行所有测试。它并没有解决问题,但它为我带来了窍门:它的想法是将所有测试放在一个文件夹中,要求每个文件都放在一个文件夹中,并对该文件运行Nightwatch。在本例中,
/bin/nightwatch--test tests/browser/nightwatch.js
。要运行不同的测试,您可以使用nightwatch cumber,您可以设置场景,因此整个会话可以有许多场景(每个场景都是一个测试):,它在一个浏览器会话中完成所有测试。可能是@WallaceSidhrée建议的重复做了这个把戏。恭喜!是否需要在已打开的浏览器中运行测试?