Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add Curso de Angular: Unit Testing para Servicios #92

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 60 additions & 0 deletions Curso_de_Angular-Unit_Testing_para_Servicios.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# Curso de Angular: Unit Testing para Servicios

1. ¿Cuál es el comando desde el Angular CLI para correr las pruebas?

> ng test

2. ¿Cuál es el significado correcto del triple A (AAA)?

> Arrange, Act, Assert

3. ¿Cuál sería el matchers apropiado para comprobar si una variable Undefined ?

> toBeUndefined

4. ¿Cuál es el comando para correr pruebas y generar el reporte de cobertura?

> ng test --code-coverage

5. El código que está dentro del beforeEach va a correr después de cada prueba.

> FALSE

6. Cuando haces pruebas unitarias de con servicios que tienen dependencias ¿Cuál de las siguientes técnicas es considerada mejor?

> Se suplantan las dependencias, ya que una prueba unitaria prueba solo la responsabilidad de la misma y no sus terceros.

7. ¿Cuál es el objetivo de los spies?

> Para verificar el comportamiento interno, ya que se evalúa si el sujeto de prueba llamo a x método con xparámetros`

8. ¿Cuál es la funcionalidad del TestBed?

> Crear un ambiente de Angular temporal el cual va a tener todos lo necesario para poder probar servicios, pipes, directivas etc.

9. ¿Cuál es la forma correcta de crear un Spy para un método de una clase?

> jasmine.createSpyObj('ValueService', ['getValue']);

10. ¿Cuál es la funcionalidad de HttpClientTestingModule?

> Poder interceptar las peticiones para inyectar datos falsos simulando el request de HttpClient.

11. ¿Cuál es la manera correcta de hacer pruebas para verificar que una petición haya sido enviada con el método GET?

> const req = httpController.expectOne(`...`); expect(req.request.method).toEqual('GET');

12. ¿Cuál es la manera correcta de hacer pruebas para verificar el body de una petición?

> const req = httpController.expectOne(`...`); expect(req.request.body).toEqual(...);

13. ¿Es correcto hacer pruebas solo de las peticiones sin tener en cuenta los errores?

> FALSE

14. ¿Cuál es la manera correcta dé hacer pruebas del los headers de una petición?

> expect(headers.get('Authorization')).toEqual(`...`);

15. ¿Cuál es el matcher correcto para verificar si un método fue llamado n veces?
> toHaveBeenCalledTimes
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ LISTA DE CURSOS
- [Curso de Next.js](nextjs.md)
- [Curso de Tailwind CSS](tailwind.md)
- [Curso de Svelte](svelte.md)
- [Curso de Angular: Unit Testing para Servicios](Curso_de_Angular-Unit_Testing_para_Servicios.md)

**BackEnd**

Expand Down