Prueba automatizada que verifica que una unidad de código funcione correctamente de manera aislada.
Asegura que funciones o métodos produzcan los resultados esperados. Son la base de la pirámide de testing.
// Test unitario con Jest/Vitest import { describe, it, expect } from 'vitest'; import { sumar, dividir, validarEmail } from './utils'; describe('Funciones matemáticas', () => { describe('sumar', () => { it('debe sumar dos números positivos', () => { expect(sumar(2, 3)).toBe(5); }); it('debe manejar números negativos', () => { expect(sumar(-1, 1)).toBe(0); }); }); describe('dividir', () => { it('debe dividir correctamente', () => { expect(dividir(10, 2)).toBe(5); }); it('debe lanzar error al dividir por cero', () => { expect(() => dividir(10, 0)).toThrow('División por cero'); }); }); }); describe('validarEmail', () => { it.each([ ['test@email.com', true], ['invalid', false], ['test@', false], ['a@b.co', true] ])('validarEmail(%s) debe ser %s', (email, esperado) => { expect(validarEmail(email)).toBe(esperado); }); }); // Mocks const mockFetch = vi.fn().mockResolvedValue({ json: () => ({}) });