TechLead
🧪
Intermedio
6 min lectura

Testing y Debugging

Testing unitario, integración y técnicas de debugging

Preguntas de Entrevista sobre Testing y Debugging

Domina las técnicas de testing y debugging para aplicaciones frontend.

1. Testing Unitario con Jest

// Función a testear
function suma(a, b) {
  return a + b;
}

// Test
describe('suma', () => {
  test('suma dos números correctamente', () => {
    expect(suma(2, 3)).toBe(5);
    expect(suma(-1, 1)).toBe(0);
  });
  
  test('maneja números decimales', () => {
    expect(suma(0.1, 0.2)).toBeCloseTo(0.3);
  });
});

2. Testing de Componentes React

import { render, screen, fireEvent } from '@testing-library/react';
import Contador from './Contador';

test('incrementa el contador', () => {
  render(<Contador />);
  
  const boton = screen.getByText('+');
  const contador = screen.getByText('0');
  
  fireEvent.click(boton);
  
  expect(screen.getByText('1')).toBeInTheDocument();
});

3. Debugging en el Navegador

// Console methods
console.log('Log normal');
console.error('Error');
console.warn('Advertencia');
console.table([{a: 1}, {a: 2}]);
console.time('operación');
// ... código ...
console.timeEnd('operación');

// Debugger
function problematicFunction() {
  debugger; // Pausa la ejecución
  const result = complexCalculation();
  return result;
}

Mejores Prácticas de Testing

  • ✓ Escribe tests para casos críticos primero
  • ✓ Mantén tests simples y enfocados
  • ✓ Usa nombres descriptivos para tests
  • ✓ Mockea dependencias externas
  • ✓ Prueba casos edge y errores
  • ✓ Mantén cobertura de código alta