如何使用 Xvfb 运行 Firefox 的 Karma?
How to run Karma with Firefox using Xvfb?
我想在无头服务器中使用 Xvfb to run Karma 启动 Firefox。
Karma 需要一个启动器插件来自动启动和停止浏览器。我找到了一个 karma-xvfb-chrome-launcher,但没有一个适用于 Firefox。
安装 Xvfb (Ubuntu) 后,我知道我可以使用以下命令启动 Firefox:
$ xvfb-run firefox <app-under-test-url>
我不知道如何让 Karma 以这种方式启动 Firefox。
有没有办法为 Karma 提供自定义 start/stop 浏览器脚本?
可以通过Karma.conf.js实现吗?
我该怎么做?
谢谢!
您可以使用 xvfb-run
启动 Karma,它启动的任何浏览器都会 运行 在一个新的 Xvfb 实例中。
在我的 Makefile
中,当我想 运行 我的基于 Karma 的测试时,我有这个命令 运行:
xvfb-run karma start --single-run
xvfb-run
通过启动一个 Xvfb 实例来运行,获取它的显示编号并设置 DISPLAY
环境变量,然后它 运行s 你作为参数传递的命令。这意味着通过 xvfb-run
执行的所有内容(包括从初始进程启动的任何新进程)都使用 xvfb-run
设置的 DISPLAY
值,因此将出现在 Xvfb 实例上xvfb-run
开始了。
正在考虑 Louis 的回答...
因为我在打字稿中使用 Angular 2,所以我在 package.json 文件中添加了以下几行:
"test": "tsc && concurrently \"tsc -w\" \"karma start karma.conf.js\"",
"test-once": "tsc && karma start karma.conf.js --single-run",
"test-xvfb": "xvfb-run npm run test-once",
现在,当我 运行 以这种方式进行测试时:
$ npm run test-xvfb
根本没有打开浏览器window!
我想在无头服务器中使用 Xvfb to run Karma 启动 Firefox。
Karma 需要一个启动器插件来自动启动和停止浏览器。我找到了一个 karma-xvfb-chrome-launcher,但没有一个适用于 Firefox。
安装 Xvfb (Ubuntu) 后,我知道我可以使用以下命令启动 Firefox:
$ xvfb-run firefox <app-under-test-url>
我不知道如何让 Karma 以这种方式启动 Firefox。
有没有办法为 Karma 提供自定义 start/stop 浏览器脚本?
可以通过Karma.conf.js实现吗?
我该怎么做?
谢谢!
您可以使用 xvfb-run
启动 Karma,它启动的任何浏览器都会 运行 在一个新的 Xvfb 实例中。
在我的 Makefile
中,当我想 运行 我的基于 Karma 的测试时,我有这个命令 运行:
xvfb-run karma start --single-run
xvfb-run
通过启动一个 Xvfb 实例来运行,获取它的显示编号并设置 DISPLAY
环境变量,然后它 运行s 你作为参数传递的命令。这意味着通过 xvfb-run
执行的所有内容(包括从初始进程启动的任何新进程)都使用 xvfb-run
设置的 DISPLAY
值,因此将出现在 Xvfb 实例上xvfb-run
开始了。
正在考虑 Louis 的回答...
因为我在打字稿中使用 Angular 2,所以我在 package.json 文件中添加了以下几行:
"test": "tsc && concurrently \"tsc -w\" \"karma start karma.conf.js\"",
"test-once": "tsc && karma start karma.conf.js --single-run",
"test-xvfb": "xvfb-run npm run test-once",
现在,当我 运行 以这种方式进行测试时:
$ npm run test-xvfb
根本没有打开浏览器window!