programing

브라우저 없이 Karma를 실행할 수 있습니까?

itsource 2023. 3. 8. 23:04
반응형

브라우저 없이 Karma를 실행할 수 있습니까?

Yeoman's 앱으로 Angular.js 앱을 시작했는데yo angular카르마 테스트를 포함합니다.그리고 나서grunt testKarma가 브라우저를 찾을 없기 때문에 합리적으로 실패했습니다.browsers앱의 node_displays/karma 구성 파일에 설정되지 않았습니다.)

SSH를 통해 리모트 머신으로 개발을 하고 있는데 Chrome을 사용하는 것은 의미가 없다고 생각합니다./usr/bin/chromium-browser,설치된.

브라우저 없이 Karma를 실행할 수 있나요?

나는 이것에 내 의견을 덧붙일 것이다.

정답 - Karma를 실행하려면 브라우저가 필요합니다.단, Chrome은 헤드리스 모드로 실행할 수 있습니다.즉, 브라우저가 설치되어 있어도 UI가 열리지 않기 때문에 SSH 세션만으로 테스트를 실행할 수 있습니다.

이 구성을 CI/CD 도입에 사용했습니다.테스트 실행용 도커 이미지에는 크롬이 설치되어 있으며 크롬 헤드리스 모드로 실행하였습니다.마법처럼 작동했어.

이것을 사용하려면 , 다음의 순서를 간단하게 변경해 주세요.browsers소유물karma.conf.js

browsers: ['ChromeHeadless']

이게 비슷한 걸 찾고 있는 누군가에게 도움이 되길...

Karma는 설정할 브라우저가 필요합니다.

팬텀을 사용할 수 있습니다.크롬 대신 JS.
사실, 이것은 기존의 브라우저 시작보다 더 신중합니다.

이 질문과 답변은 오늘(2018년, > angular2, @angular/cli, typescript 등) 매우 관련이 있습니다.

다음은 인터넷에서 유용한 정보를 바탕으로 한 작은 업데이트입니다.

예를 들어,angular cli수정된 적이 없는 생성 프로젝트입니다.사용하고 싶다고 말해 주세요.PhantomJSangular2 테스트를 실행합니다(충격적이지 않습니다).

설치부터 시작합니다.PhantomJS프로젝트의 카르마를 위한 런처

npm i --save-dev karma-phantomjs-launcher

다음으로 다음 업데이트는karma.conf.js다음과 같이 파일을 작성합니다.

먼저 플러그인 속성:

plugins: [
  require('karma-jasmine'),
  require('karma-phantomjs-launcher'),
  require('karma-jasmine-html-reporter'),
  require('karma-coverage-istanbul-reporter'),
  require('@angular/cli/plugins/karma')
],

그러면 브라우저 속성

browsers: [ 'PhantomJS' ],

이 시점에서 테스트를 실행하면 다음 오류가 발생할 수 있습니다.

PhantomJS 2.1.1 (Windows 7 0.0.0) ERROR
  TypeError: pre,template,textarea,script,style is not iterable!
  at http://localhost:9876/_karma_webpack_/polyfills.bundle.js:792

기본적으로, 그것은 당신의PhantomJS다른 폴리필이 필요합니다.다음 행의 주석을 해제합니다.src\polyfills.ts

import 'core-js/es6/symbol';
import 'core-js/es6/object';
import 'core-js/es6/function';
import 'core-js/es6/parse-int';
import 'core-js/es6/parse-float';
import 'core-js/es6/number';
import 'core-js/es6/math';
import 'core-js/es6/string';
import 'core-js/es6/date';
import 'core-js/es6/array';
import 'core-js/es6/regexp';
import 'core-js/es6/map';
import 'core-js/es6/weak-map';
import 'core-js/es6/set';

마지막으로 이 문제를 해결하는 데 도움이 된 링크를 다음에 제시하겠습니다.

브라우저 없이 재스민 테스트를 실행하는 방법

아이폰4s에서 새로운 angular-cli 앱이 작동하지 않음

언급URL : https://stackoverflow.com/questions/21895984/is-it-possible-to-run-karma-with-no-browsers-at-all

반응형