2017-08-21 1 views
0

actuellement, j'essaie d'exécuter les cas de tests unitaires de l'application angulaire dans l'environnement docker en utilisant test ng afin qu'il ouvre un navigateur, je n'ai pas besoin que cela se produise alors j'ai essayé RUN ng test --browser PhantomJS mais il ain ne travaille pas.comment puis-je tester l'application angulaire dans un environnement docker sans ouvrir le navigateur?

reçois cette erreur 22 08 2017 11: 52: 42,355: WARN [karma]: navigateur Non capturé, ouvert http://localhost:9876/ 22 08 2017 11: 52: 42,370: INFO [karma]: Karma v1.7.0 serveur a commencé 22 08 2017 11: 52: 42.370: INFO [lanceur]: Lancement du navigateur PhantomJS avec accès illimité 22 08 2017 11: 52: 42.382: INFO [lanceur]: Lancement du navigateur PhantomJS 68% modules de construction 507/523 modules 16 active .../rxjs/observable/PromiseObs22 08 2017 11: 52: 53.039: WARN [karma]: Aucun navigateur capturé, localhost ouvert: 9876/ 22 08 2017 11: 53: 42.382: WARN [lanceur]: PhantomJS ont pas capturé à 60000 ms, tuant. 22 08 2017 11: 53: 44.383: WARN [lanceur]: PhantomJS n'a pas été tué en 2000 ms, en envoyant SIGKILL. 22 08 2017 11: 53: 46.385: WARN [lanceur]: PhantomJS n'a pas été tué par SIGKILL en 2000 ms, continue.

+0

Vous n'avez jamais mentionné quelle est l'erreur? Afficher les journaux de votre exécution –

Répondre

1

Vous ne pouvez pas exécuter vos tests angulaires sans un navigateur car il fait partie d'une application frontale qui ne fonctionne que sur un navigateur. Je vois que vous essayez de l'exécuter sur PhantomJs. PhantomJs est un projet javascript destiné à émuler un navigateur pour tester des applications angulaires. De votre point de vue, tout ce que vous voulez, c'est de vous assurer que le test fonctionne et que vous ne vous souciez pas vraiment de l'ouverture d'un navigateur. C'est précisément ce qu'est un navigateur «sans tête». Un navigateur sans interface graphique. PhantomJs, un exemple de navigateur sans écran, est devenu populaire dans le passé car il peut exécuter des tests en pipeline sans avoir besoin d'une interface graphique. Aujourd'hui, Chrome propose également un mode sans tête pour les coureurs de test.

Si vous avez configuré votre fichier de configuration Karma correctement avec PhantomJs, vous verrez que cela fonctionne correctement. Voici un lien de personne faisant ce que vous voulez dans l'environnement docker pour un pipeline CI gitlab.

https://medium.com/letsboot/angular-4-and-testing-angular-cli-gitlab-ci-ng-test-phantomjs-tdd-afc20f50b928