node.js - 如何从 Express Node 服务器中调用 Protractor ?

标签 node.js protractor

我有一个浏览器应用程序,由 Express Node 服务器提供服务。服务器有一个 /runprotractor 端点,通过...运行 Protractor

var launcher = require('/usr/lib/node_modules/protractor/lib/launcher.js');
launcher.init(pathToConfigFile)

这可行,但是当 Protractor 套件完成时, Node 进程将终止。我删除了 process.exit() ,果然, Protractor 正在调用它。随着 process.exit 被取消, Node 服务器继续运行,但现在后续的 Protractor 调用默默地什么都不做。我猜是因为有些全局状态没有被重置。

关于如何最好地从快速服务器调用 Protractor ,以便我可以传递可在我的测试规范中访问的参数,有什么建议吗?

最佳答案

最后我决定生成一个子进程......

var pro = require('child_process').spawn('protractor', paramsForProtractorSpawn);
  pro.stdout.on('data', (data) => {
    console.log('stdout: ' + data);
  });

关于node.js - 如何从 Express Node 服务器中调用 Protractor ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35309158/

相关文章:

angularjs - 我遇到了 phantomjs 和 karma 问题

javascript - React - 无效的钩子(Hook)调用。钩子(Hook)只能在函数组件体内调用

selenium-webdriver - 版本 93 中的 ChromeDriver session 超时

javascript - 检查元素是否不存在

javascript - 为什么我不能在 Protractor 中使用 querySelector?

javascript - JS Socket.io 断开 for() 循环

javascript - Serialport npm 可用 COM 端口列表

javascript - 如何集成 Express 和 React 来发送电子邮件

Protractor - 无法读取未定义的属性 '$$testability'

angularjs - Protractor - 描述未定义