Si al ejecutar ng test les sale el siguiente error:
Data path “.builders['app-shell']” should have required property 'class'
Lo que deben hacer es cambiar la versión de “@angular-devkit/build-angular” a la “0.13.4” en el package.json
Bienvenida e Introducción
¿Qué son las pruebas unitarias?
¿Por qué hacer pruebas unitarias?
Creando un framework de pruebas básico
Mi primera prueba unitaria en JavaScript
Las funciones expect() y it()
Organizando el código para correr en la web
Organizando el código para correr utilizando nodejs
Análisis estático de código
Herramientas de análisis estático de código
ESLint: Agregando alertas a nuestro código con ECMA Script
Herramientas de corrección de estilo
Herramientas de tipado
Trabajando con Jasmine en el frontend
Profundización en SpyOn: Comandos más utilizados y cómo ponerlos a prueba
Configurar un ambiente de trabajo para trabajar con el framework jasmine
Configurar Jasmine utilizando Node.js
Primer set de pruebas con Jasmine
Diccionario Jasmine
Probando Nodejs apps con Jasmine
Introducción al módulo de testing del lado del servidor
Configurando el proyecto Jasmine utilizando npm
Agregando Plugins a Jasmine
Configurando nuestro reporter
Pruebas en el servidor: Verificando un status 200 en GET
Pruebas en el servidor: Probando el método GET y Reto con FindByID
Pruebas en el servidor: Probando el método POST (request to server)
Pruebas en el servidor: Probando el método POST (request to PDF)
Probando Angular apps con Jasmine
Tipos de pruebas
Pruebas en el frontend: Probando el componente principal (App)
Configurando los ciclos de vida
Creando las pruebas del formulario: Configuración
Creando las pruebas necesarias para un formulario. (Primeras pruebas)
Probando el caso de exito al guardar un elemento en el servidor.
Trabajando con event emitters
Testeando ngZone y navegación.
Configurando el TestBed de el componente PINs
Creando un espia sobre el objecto window
Pruebas de integración de Angular apps con Jasmine
Ejecutando funciones a través de eventos en el template
Probando la navegación
Probando servicios con HTTP
Completando las pruebas del servicio HTTP
Cierre del curso
Aún no tienes acceso a esta clase
Crea una cuenta y continúa viendo este curso
Vamos a crear algunas pruebas para nuestro componente principal en el frontend: un conjunto de archivos que encontramos en la carpeta src/app
.
El archivo app.component.ts
se encarga de definir la lógica de nuestra aplicación. Por ahora, no tenemos nada, solo la referencia a otros componentes con tareas muy concretas que vamos a ir probando en las siguientes clases:
app.component.html
: Se encarga de renderizar el componente de navegación, router-outlet
.app.component.spec.ts
: Tiene todas las pruebas del componente App. Algunas de las pruebas por defecto no son muy útiles en este momento y vamos a reemplazarlas por algunas pruebas en el archivo app.component.html
para confirmar que se incluye el componente render-oulet
y la navegación funciona correctamente.Aportes 5
Preguntas 2
Si al ejecutar ng test les sale el siguiente error:
Data path “.builders['app-shell']” should have required property 'class'
Lo que deben hacer es cambiar la versión de “@angular-devkit/build-angular” a la “0.13.4” en el package.json
Para mi fue complicado este curso. Más que nada por iniciar con el proyecto. Tuve que instalar angular 9 y ahi copiar las carpetas del proyecto. Y me funciono sin problema esto de las pruebas.
import { TestBed, async, ComponentFixture } from '@angular/core/testing';
import { RouterTestingModule } from '@angular/router/testing';
import { AppComponent } from './app.component';
import { By } from '@angular/platform-browser';
import { RouterOutlet } from '@angular/router';
describe('AppComponent', () => {
let fixture: ComponentFixture<AppComponent>;
let component: AppComponent;
beforeEach(async(() => {
TestBed.configureTestingModule({
imports: [
RouterTestingModule
],
declarations: [
AppComponent
],
}).compileComponents();
}));
beforeEach( () => {
fixture = TestBed.createComponent(AppComponent);
component = fixture.debugElement.componentInstance;
})
;
it('Should have a router outler', () => {
const de = fixture.debugElement.query(By.directive(RouterOutlet));
expect(de).not.toBeNull();
});
});
Buenas, he hecho un copy&paste del código de ejemplo, pero me aparece este error:
No se porque no encuentra la función ‘debugElement’.
Un saludo.
Yo estoy trabajando con angular 9 y no necesite poner la f en la función describe.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.