Moh*_*del 6 npm karma-jasmine karma-webpack angular
我正在尝试使用 npm 运行角度测试
ng test
但问题是 chrome 在测试完成后启动而不停止,所以我使用了:
ng test --watch=false
Run Code Online (Sandbox Code Playgroud)
但这会导致错误“Chrome 69.0.3497 (Linux 0.0.0) ERROR”,导致 chrome 超时
您可以使用Headless chrome在基于 unix 的系统下避免这种情况
这是在无头环境中运行 Chrome 浏览器的一种方式。本质上,在没有 chrome 的情况下运行 Chrome!它将 Chromium 和 Blink 渲染引擎提供的所有现代 Web 平台功能引入命令行。
首先:
配置您karma.conf.js
使用无头镀铬,例如添加customLaunchers
:
...
browsers: ['Chrome'],
customLaunchers: {
ChromeNoSandboxHeadless: {
base: 'ChromeHeadless',
flags: ['--no-sandbox']
}
},
Run Code Online (Sandbox Code Playgroud)
第二:
告诉你的package.json
脚本使用你的配置进行测试:
"scripts": {
...
"test": "ng test --browsers=ChromeNoSandboxHeadless",
...
},
Run Code Online (Sandbox Code Playgroud)
然后运行npm run test
oryarn test
并且您的测试将在不打开浏览器的情况下工作。您可以url
在您喜欢的浏览器(firefox、chrome、chromium 等...)中打开显示。
第二种方式: 您可以使用Karma-mocha-reporter在控制台中显示所有测试用例
npm install karma-mocha-reporter --save-dev
karma.conf.js
下plugins
像require('karma-mocha-reporter'),
然后将新记者添加mocha
到您的记者阵列:reporters: ['mocha', 'progress', 'kjhtml']
使用npm run test
或yarn test
将报告显示到您的控制台中运行您的测试。
其它的办法:
在您karma.config.json
查看选项singleRun
(布尔默认设置为false
)。Set true
,Karma 将启动并捕获所有配置的浏览器,运行测试,然后根据所有测试是否通过或任何测试失败以退出代码 0 或 1 退出。或者,使用标志运行它npm run test --single-run
。
归档时间: |
|
查看次数: |
1631 次 |
最近记录: |