CLI angular - comando ng test

Sintaxis

ng test <project> [options]
ng t <project> [options]

ng prueba ejecuta los casos de prueba unitarios en el código de la aplicación angular. Las opciones son parámetros opcionales.

Argumentos

No Señor. Argumento y sintaxis Descripción
1 <proyecto> El nombre del proyecto para probar.

Opciones

No Señor. Opción y sintaxis Descripción
1 --browsers = navegadores Anula contra qué pruebas de navegadores se ejecutan.
2 --codeCoverage = true | false

Genere un informe de cobertura de código.

Predeterminado: falso

3 --codeCoverageExclude Globs para excluir de la cobertura del código.
4 --configuration = configuración

Un destino de compilación con nombre, como se especifica en la sección "configuraciones" de angular.json. Cada objetivo nombrado está acompañado por una configuración de opciones predeterminadas para ese objetivo. Establecer esto anula explícitamente la marca "--prod"

Alias: -c

5 --help = true | false | json | JSON

Muestra un mensaje de ayuda para este comando en la consola.

Predeterminado: falso

6 --incluir

Globos de archivos para incluir, relativos al espacio de trabajo o la raíz del proyecto. Hay 2 casos especiales:

  • cuando se proporciona una ruta al directorio, se incluirán todos los archivos de especificaciones que terminen en ".spec. @ (ts | tsx)".

  • cuando se proporciona una ruta a un archivo y existe un archivo de especificaciones coincidente, se incluirá en su lugar.

7 --karmaConfig = karmaConfig El nombre del archivo de configuración de Karma.
8 --main = principal El nombre del archivo de punto de entrada principal.
9 --encuesta Habilite y defina el período de tiempo de la encuesta de observación de archivos en milisegundos.
10 --polyfills = polyfills El nombre del archivo polyfills.
11 --preserveSymlinks = verdadero | falso

No utilice la ruta real al resolver módulos.

Predeterminado: falso

12 --prod = verdadero | falso Abreviatura de "--configuration = producción". Cuando es verdadero, establece la configuración de compilación en el objetivo de producción. De forma predeterminada, el objetivo de producción se establece en la configuración del espacio de trabajo de modo que todas las compilaciones utilizan la agrupación, la agitación limitada de árboles y también la eliminación limitada de códigos muertos.
13 --progreso = verdadero | falso Registre el progreso en la consola durante la construcción.
13 --progreso = verdadero | falso Registre el progreso en la consola durante la construcción.
14 --reporteros Reporteros de karma para usar. Pasado directamente al corredor de karma.
15 --sourceMap = verdadero | falso

Mapas fuente de salida.

Predeterminado: verdadero

dieciséis --tsConfig = tsConfig El nombre del archivo de configuración de TypeScript.
17 --watch = verdadero | falso Ejecute la compilación cuando cambien los archivos.
18 --webWorkerTsConfig = webWorkerTsConfig Configuración de TypeScript para módulos Web Worker.

Primero muévase a un proyecto angular actualizado usando el comando ng build .

Ahora ejecute el comando de prueba.

Ejemplo

\>Node\>TutorialsPoint> ng test
...
WARN: ''app-goals' is not a known element:
1. If 'app-goals' is an Angular component, then verify that it is part of this module.
2. If 'app-goals' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message.'
Chrome 83.0.4103 (Windows 7.0.0): Executed 0 of 4 SUCCESS (0 secs / 0 secs)
...
AppComponent should render title FAILED
   TypeError: Cannot read property 'textContent' of null
      at <Jasmine>
      at UserContext.<anonymous> (http://localhost:9876/_karma_webpack_/src/app/app.component.spec.ts:33:51)
            ...
Chrome 83.0.4103 (Windows 7.0.0): Executed 1 of 4 (1 FAILED) (0 secs / 0.203 secs)
...
Chrome 83.0.4103 (Windows 7.0.0): Executed 2 of 4 (1 FAILED) (0 secs / 0.221 secs)
...
Chrome 83.0.4103 (Windows 7.0.0): Executed 4 of 4 (1 FAILED) (0 secs / 0.244 sec
Chrome 83.0.4103 (Windows 7.0.0): Executed 4 of 4 (1 FAILED) (0.282 secs / 0.244
 secs)
TOTAL: 1 FAILED, 3 SUCCESS

Ahora, para corregir fallas, actualice app.component.spec.ts

app.component.spec.ts

import { TestBed, async } from '@angular/core/testing';
import { RouterTestingModule } from '@angular/router/testing';
import { AppComponent } from './app.component';

describe('AppComponent', () => {
   beforeEach(async(() => {
      TestBed.configureTestingModule({
         imports: [
            RouterTestingModule
         ],
         declarations: [
            AppComponent
         ],
      }).compileComponents();
   }));

   it('should create the app', () => {
      const fixture = TestBed.createComponent(AppComponent);
      const app = fixture.componentInstance;
      expect(app).toBeTruthy();
   });
});

Ahora ejecute el comando de prueba.

Ejemplo

\>Node\>TutorialsPoint> ng test
...
WARN: ''app-goals' is not a known element:
1. If 'app-goals' is an Angular component, then verify that it is part of this m
odule.
2. If 'app-goals' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@
NgModule.schemas' of this component to suppress this message.'
Chrome 83.0.4103 (Windows 7.0.0): Executed 1 of 2 SUCCESS (0 secs / 0.053 secs)
...
Chrome 83.0.4103 (Windows 7.0.0): Executed 2 of 2 SUCCESS (0.097 secs / 0.073 se
cs)
TOTAL: 2 SUCCESS

ng test también abre el navegador y muestra el estado de la prueba.