Outils pour utilisateurs

Outils du site


lang:angular:test

Angular

Tests unitaires

Erreurs

  • error NG8001: 'xxx' is not a known element
1. If 'xxx' is an Angular component, then verify that it is part of this module.
2. If 'xxx' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message.

Si le problème existe uniquement lors des ng test, c'est qu'il s'agit d'un composant enfant du composant à tester.

On peut soit donc désactiver cet avertissement en ajoutant schemas: [NO_ERRORS_SCHEMA] lors du test,

import { NO_ERRORS_SCHEMA } from '@angular/core';
 
TestBed.configureTestingModule({
        declarations: [YourComponent],
        schemas: [NO_ERRORS_SCHEMA]
      }).compileComponents();

Soit utiliser un stub et le déclarer dans TestBed.configureTestingModule.

@Component({selector: 'xxx', template: ''})
class MeyerhofCalcComponent {
}
 
    await TestBed.configureTestingModule({
      declarations: [MainComponent, MeyerhofCalcStubComponent]
    }).compileComponents();

Il serait aussi possible d'importer le composant mais dans ce cas, on quitte les tests unitaires pour passer aux tests fonctionnels.

    TestBed.configureTestingModule({
      imports: [
        AppModule
      ],
    }).compileComponents();

Element not known error in Karma when ran “ng test” Archive du 03/05/2019 le 09/08/2021

Component testing scenarios Archive du v12.1.5 le 09/08/2021

Karma

Configuration

Ajout des assets

On commence par les ajouter à les fichiers à ajouter:

karma.conf.js
module.exports = function (config) {
  config.set({
    files: [
      {pattern: 'assets/*.wasm', watched: true, included: false, served: true, nocache: true}
    ],
    proxies: {
      '/assets/':'/base/assets/'
    },
  });
};

Les fichiers ajoutées seront disponibles à l'adresse http://localhost:9876/base.

Le proxy va rediriger les requêtes http://localhost:9876/assets vers http://localhost:9876/base/assets.

Karma not serving assets in angular 8 Archive du 30/05/2019 le 09/08/2021

Karma - Files Archive du v6.3 le 09/08/2021

Protractor

Protractor permet de faire des tests en e2e (end to end) avec des scripts en Angular.

Après de nombreuses heures à essayer de le configurer, je n'ai finalement pas réussi.

Ne pas utiliser. Un certificat de décès existe depuis le 5 avril 2021 Archive du 05/04/2021 le 20/08/2021

lang/angular/test.txt · Dernière modification : 2021/08/20 22:11 de root