testing
Recursos prácticos sobre testing para ingenieros de software.
89 resultados
Estrategias de Testing que Entregan con Confianza
El testing no se trata solo de encontrar bugs — se trata de entregar más rápido, refactorizar sin miedo y documentar comportamiento a través de specs ejecutables. Una base de código bien testeada reduce el tiempo de respuesta a incidentes y la fricción de onboarding.
Explora recetas para unit testing con mocks, testing de integración con dependencias reales, testing end-to-end con Playwright y load testing con k6. Cada patrón incluye instrucciones de setup, estrategias de aserción y tips de integración CI/CD.
Mocks de resolvers GraphQL para desarrollo frontend
Configura resolvers GraphQL mockeados con Apollo Server para que los equipos frontend desarrollen contra una API falsa antes del backend
Testing de Carga de APIs con k6 y Aserciones Basadas en
Como escribir y ejecutar tests de carga con k6 para medir rendimiento de APIs, validar SLOs e identificar cuellos de botella antes del despliegue a produccion
Testear Contratos de API con Consumer-Driven Contracts
Cómo prevenir cambios breaking entre microservicios usando contract testing consumer-driven con Pact y validadores de OpenAPI.
API Mocking para Testing
Construye tests confiables mockeando APIs externas con WireMock, MockServer y MSW para eliminar flakiness y testear casos edge.
Generar Datos de Test
Cómo generar datos de test realistas y deterministas con Faker, factory-boy y generadores type-aware para suites de test confiables en Python, JavaScript y Java.
Implementar Mutation Testing
Cómo usar mutation testing con MutPy, Stryker y PIT para evaluar si tus tests realmente asertan comportamiento o simplemente ejecutan código.
Implementar Property-Based Testing
Cómo escribir tests property-based con Hypothesis, fast-check y jqwik que generan miles de entradas para encontrar casos edge que los tests tradicionales no detectan.
Diseñar Tests de Integración Efectivos para Sistemas
Cómo escribir tests de integración que verifiquen interacciones de componentes usando test containers, contratos de API, consumer-driven contracts y contract testing en Java, TypeScript y Python.
Escribir Tests de Integración
Cómo testear múltiples componentes trabajando juntos usando bases de datos reales, clientes HTTP y colas de mensajes en Python, JavaScript y Java.
JUnit5 Soft Assertions con AssertJ
Cómo usar AssertJ soft assertions en JUnit5 para recolectar múltiples fallos de aserción en un solo test en lugar de detenerse en el primer fallo.
Testcontainers para Tests de Integración en Java
Cómo usar Testcontainers en JUnit5 para levantar contenedores reales de Postgres, Redis y Kafka para tests de integración confiables y reproducibles.
Stubear Servicios HTTP Externos con WireMock
Cómo usar WireMock en tests de Java para stubear servicios HTTP externos, incluyendo templating de respuestas, simulación de delays y comportamiento stateful.
Mockear Peticiones de Red con MSW
Cómo usar Mock Service Worker (MSW) para interceptar peticiones de red en tests y desarrollo de JavaScript, incluyendo mocking de REST y GraphQL.
Vitest Snapshot Testing para React
Cómo usar Vitest snapshot testing para detectar cambios no intencionados en la UI de componentes React, incluyendo inline snapshots y flujos de actualización.
Snapshot Testing de Componentes React con Jest
Como usar snapshot testing de Jest para detectar regresiones de UI no intencionales en componentes React y prevenir bugs visuales en produccion
Realizar Load Testing en APIs
Cómo simular tráfico realista, medir tiempos de respuesta e identificar cuellos de botella usando k6 y JMeter para APIs y servicios web.
Medir Cobertura de Test
Cómo medir, reportar y hacer cumplir la cobertura de código con branch y condition coverage usando pytest-cov, nyc y JaCoCo para quality gates significativos.
Testear APIs Express con supertest
Cómo testear endpoints REST de Express.js end-to-end usando supertest, incluyendo códigos de estado, bodies JSON, headers, autenticación y manejo de errores.
Medir Cobertura de Tests con pytest-cov
Cómo medir y exigir umbrales de cobertura de tests en Python con pytest-cov, incluyendo branch coverage, reportes HTML, exclusiones e integración con CI.
Property-Based Testing con Hypothesis
Cómo usar Hypothesis para property-based testing en Python, generando cientos de casos de test automáticamente desde strategies en lugar de escribirlos a mano.
Mockear APIs Externas con responses
Cómo mockear llamadas HTTP en tests de Python usando la librería responses, incluyendo códigos de estado, headers, bodies JSON y simulación de errores.
Pytest Fixtures y Parametrize
Cómo usar pytest fixtures y @pytest.mark.parametrize para escribir tests data-driven con lógica de setup reutilizable en proyectos Python.
Configurar Fixtures de Test
Cómo gestionar fixtures de test con patrones factory, hooks de setup/teardown y datos deterministas para tests unitarios e integración confiables en Python, JavaScript y Java.
Escribir Unit Tests con Mocks y Stubs
Cómo aislar código bajo test usando objetos mock, stubs y spies para reemplazar dependencias externas como bases de datos, APIs y sistemas de archivos.
Pruebas Unitarias
Cómo escribir pruebas unitarias rápidas y deterministas con mocks y assertions en Python, JavaScript y Java.
Patrón Contract Testing
Cómo usar contract testing para verificar que producers y consumers de API acuerdan en shapes de request y response. Cubre Pact consumer-driven contracts y provider verification.
Patrón Fixture Setup/Teardown
Cómo usar setup y teardown fixtures para crear contexto de test reutilizable. Cubre beforeEach, factory functions, fixture objects y cleanup con ejemplos.
Golden Master Testing
Cómo usar golden master testing para caracterizar comportamiento de legacy code antes de refactorizar. Cubre captura de output, comparación de baselines, e incremental refactoring.
Patrón Mock Server: Mock Server para Aislamiento de
Cómo usar mock servers para aislar integration tests de dependencias externas. Cubre WireMock, nock, MSW, y Mountebank con ejemplos de configuración.
Patrón Parameterized Test
Cómo escribir parameterized tests para verificar la misma lógica across múltiples inputs. Cubre pytest parametrize, Jest test.each, JUnit ParameterizedTest y data providers.
Patrón Snapshot Testing
Cómo usar snapshot testing para detectar cambios no intencionales en output serializado. Cubre Jest snapshots, pytest-snapshot, e inline vs external snapshots.
Patrón Test Double: Reemplazar Dependencias con Stubs,
Cómo usar test doubles para aislar unidades bajo test. Cubre stubs, spies, fakes, mocks y dummy objects con ejemplos en Python, JavaScript y Java.
Patrón Test Pyramid: Balancear Proporciones de Unit,
Cómo estructurar un test suite usando la test pyramid. Cubre proporciones de unit, integration y E2E tests, la testing trophy, y el anti-pattern ice cream cone.
Plantilla de Política de Gobernanza de Datos
Una plantilla para clasificación, retención, control de acceso, privacidad y cumplimiento de datos cubriendo GDPR, CCPA y SOC 2.
Plantilla de Documento de Diseño de Data Pipeline
Una plantilla para documentar sources, transforms, sinks, scheduling, error handling y monitoring de data pipelines con schema definitions.
Plantilla de Reglas de Calidad de Datos
Una plantilla para definir reglas de validación por dataset y columna: completeness, consistency, accuracy, timeliness y uniqueness checks.
Plantilla de Runbook para Jobs ETL
Un runbook para operar, monitorear y troubleshootear jobs ETL: startup, shutdown, health checks, common failures, diagnostics y recovery.
Plantilla de Diseño de Pipeline CI/CD
Una plantilla para documentar stages, gates, environments, deployment strategies, rollback procedures y security scanning de pipelines CI/CD.
Plantilla de Checklist para Code Review
Una checklist estructurada para realizar revisiones de codigo consistentes y exhaustivas que detecten bugs, mejoren la legibilidad y compartan conocimiento entre el equipo.
Checklist de Revisión de Helm Charts
Un checklist para revisar Helm charts cubriendo values, templates, security, resource limits, probes, RBAC y best practices.
Plantilla de Pod Disruption Budget de Kubernetes
Una plantilla para definir Pod Disruption Budgets que controlan voluntary disruptions durante node drains, upgrades y maintenance windows.
Plantilla de Alcance de Prueba de Penetracion
Una plantilla para definir los limites, objetivos, reglas y entregables de una prueba de penetracion.
Política de Gestión de Estado de Terraform
Una política para gestionar Terraform state files: backend configuration, locking, isolation, access control, versioning y disaster recovery.
Checklist de Auditoría de Accesibilidad
Un checklist de cumplimiento WCAG 2.2 cubriendo criterios perceivable, operable, understandable y robust con herramientas y pasos de remediación.
Plantilla de Matriz de Soporte de Navegadores
Una plantilla para trackear targets de soporte de navegadores, compatibilidad de features, requisitos de polyfills y estrategias de fallback.
Plantilla de Documentación de Component API
Una plantilla para documentar APIs de componentes UI: props, events, slots, methods, accessibility y usage examples con TypeScript types.
Plantilla de Performance Budget Frontend
Una plantilla para definir budgets de JS, CSS, imágenes y fonts por ruta con estrategias de enforcement y thresholds de monitoreo.
Plantilla de Runbook de Alertas
Un runbook estandarizado para responder alertas: triage, diagnosis, mitigation, resolution y post-incident steps con escalation paths.
Plantilla de Diseño de Dashboards
Una plantilla para diseñar dashboards de observabilidad con SLOs, error budgets, service health e información contextual para on-call teams.
Plantilla de Postmortem de Incidentes
Una plantilla de postmortem blameless para documentar incidentes: timeline, impact, root cause, contributing factors y action items con owners.
Plantilla de Evaluación de Madurez de Observabilidad
Una plantilla para evaluar madurez de logging, metrics y tracing across teams con scoring, gap analysis y improvement roadmap.
Plantilla de Load Test Plan
Plantilla para planear y documentar load tests: test scenarios, user journey definitions, ramp-up strategies, success criteria, monitoring setup, tool selection (k6, JMeter, Locust), result analysis y reporting con ejemplos de codigo para cada tool.
Plantilla de Política de Control de Acceso
Una plantilla para definir autenticación, autorización, RBAC, ABAC, MFA, políticas de contraseñas, gestión de sesiones y revisiones de acceso.
Runbook de Rotación de Claves de Cifrado
Un runbook para rotación de claves de cifrado cubriendo tipos de clave, schedules de rotación, migración dual-key sin downtime, verificación y rollback.
Plantilla de Plan de Respuesta a Incidentes
Una plantilla para respuesta a incidentes cubriendo clasificación de severidad, roles, detección, contención, erradicación, recuperación y revisión post-incidente.
Plantilla de Informe de Prueba de Penetración
Una plantilla para informes de pruebas de penetración cubriendo alcance, metodología, hallazgos, severidad, evidencia y recomendaciones de remediación.
Checklist de Auditoría de Seguridad
Un checklist para auditorías de seguridad cubriendo network security, application security, data protection, access control, monitoring y compliance.
Plantilla de Respuesta a Incidentes de Seguridad
Una plantilla para respuesta a incidentes de seguridad cubriendo detección, clasificación, contención, erradicación, recuperación, comunicación y revisión post-incidente.
Plantilla de Proceso de Gestión de Vulnerabilidades
Una plantilla para gestión de vulnerabilidades cubriendo descubrimiento, triaje, priorización, SLAs de remediación, verificación y procedimientos de reporte.
Plantilla de Estrategia de Testing de API
Una plantilla para planificar tests de contrato, integración y carga para APIs.
Plantilla de Pasos de Reproducción de Bugs
Una plantilla para escribir pasos de reproducción mínimos y confiables que ayudan a developers a reproducir y fixear issues rápidamente.
Plantilla de Informe de Pruebas de Carga
Una plantilla estandarizada para documentar resultados de pruebas de carga y recomendaciones.
Checklist de Pruebas de Regresión
Un checklist para verificar funcionalidad existente después de cambios: pre-deploy checks, post-deploy smoke tests y verificación de rollback.
Plantilla de Caso de Prueba
Un formato estandarizado de caso de prueba con pasos, resultados esperados, precondiciones y postcondiciones para testing manual y automatizado.
Plantilla de Reporte de Cobertura de Pruebas
Una plantilla para reportar cobertura de pruebas por módulo, feature y critical path con análisis de tendencias e identificación de gaps.
Plantilla de Documento de Estrategia de Pruebas
Una plantilla para documentar la estrategia de pruebas por proyecto: pirámide, alcance, entornos, herramientas, gates de CI/CD y métricas de calidad.
Referencia Detallada de AI Agents en Producción
Construir AI agents en produccion. Cubre arquitecturas de agents, tool use, planning, memory, multi-agent systems, patrones ReAct, function calling, human-in-the-loop, safety y deployment para agents autonomos confiables.
Referencia Detallada de LangChain en Producción
Ejecutar LangChain en produccion. Cubre chains, agents, memory, tools, LCEL, streaming, callbacks, integracion RAG, evaluacion y patrones de deployment para aplicaciones LangChain confiables.
Referencia Detallada de Evaluación de LLM
Evaluar aplicaciones LLM en produccion. Cubre RAGAS, LLM-as-judge, evaluacion humana, A/B testing, deteccion de hallucinations, toxicity scoring, regression testing y pipelines de evaluacion automatizados.
Referencia Detallada de Testing GraphQL
Testear APIs GraphQL en cada capa: unit tests para resolvers, integration tests para esquemas, E2E para operaciones. Cubre mocking, fixtures, snapshot testing y performance testing.
Clean Code: Naming, Functions, Classes, Comments
Dominá clean code principles: meaningful naming, small functions, single responsibility, comments, formatting, error handling y patrones de code quality en producción.
Code Reviews: Reviewer Mindset, Feedback, Automation
Dominá code review best practices: reviewer mindset, constructive feedback, review checklists, automated checks, PR sizing y cómo construir una strong review culture.
Refactoring: Extract Method, Replace Conditional
Dominá refactoring techniques: extract method, replace conditional with polymorphism, move function, extract class, rename y safe refactoring workflows con tests.
Referencia Detallada de Technical Debt: Track, Prioritize, Pay Down
Dominá technical debt management: identificá debt types, trackeá con debt registers, priorizá usando impact vs effort, agendá paydown sprints y medí debt reduction.
Referencia Detallada de Concurrencia en Go
Concurrencia en Go en produccion. Cubre goroutines, channels, context, select, sync primitives, worker pools, pipelines, fan-out/fan-in y patrones para aplicaciones Go concurrentes de alto throughput.
Referencia Detallada de Concurrencia en Java
Concurrencia en Java en produccion. Cubre threads, locks, CompletableFuture, virtual threads, executors, concurrent collections, memory model y patrones para aplicaciones paralelas de alto throughput.
Referencia Detallada de Python Asyncio en Producción
Ejecutar Python asyncio en produccion con confianza. Cubre event loops, gestion de tasks, debugging, cancellation, timeouts, backpressure y patrones para aplicaciones async de alta concurrencia.
Chaos Engineering
Guia practica de chaos engineering: construye sistemas resilientes inyectando fallos intencionalmente. Aprende los cinco principios, Litmus, Gremlin y Chaos Mesh.
Guía de Pipelines CI/CD
Una guía práctica para construir pipelines CI/CD con GitHub Actions, testing, estrategias de deployment y procedimientos de rollback.
Referencia Detallada de CI/CD con GitHub Actions
Construye pipelines CI/CD desde cero con GitHub Actions. Cubre workflows, runners, matrix builds, caching, secrets, environments, deployment strategies y reusable workflows.
Postmortems Sin Culpa: Aprendiendo de Incidentes Sin Culpar
Guía práctica sobre postmortems sin culpa: capturar timelines, identificar causas raíz, escribir seguimientos útiles y construir una cultura de mejora continua a partir de interrupciones.
Prácticas de Codificación Segura — Por Lenguaje y Patrón
Guía práctica de prácticas de codificación segura en varios lenguajes: validación de entrada, seguridad de memoria, autenticación y patrones defensivos para Python, Java, JavaScript y Go.
JUnit 5: Extensions, Tests Parametrizados, Dynamic Tests
Dominá JUnit 5 para testing moderno en Java: modelo de extensions, tests parametrizados, dynamic tests, test interfaces, lifecycle, conditional execution y JUnit Platform.
Property-Based Testing: Hypothesis, fast-check, QuickCheck
Dominá property-based testing con Hypothesis (Python), fast-check (TypeScript) y principios de QuickCheck. Generá test cases automáticamente, encontrá edge cases y shrinkéá failures.
Guía de Pytest en Producción
Dominá pytest para codebases de producción: fixtures avanzados, plugins, markers personalizados, tests parametrizados, ejecución paralela con pytest-xdist e integración con CI.
Testcontainers: Dependencias Reales en Integration Tests
Dominá Testcontainers para integration testing con databases reales, message brokers y APIs. Cubre Java, Python y Node.js con test fixtures basados en Docker.
Vitest para React: Component, Hook, e Integration Testing
Dominá Vitest para testing en React: component tests con Testing Library, hook tests con renderHook, integration tests, mocking, snapshot testing y ejecución paralela.
Desarrollo Guiado por Pruebas (TDD)
Aprende TDD paso a paso: escribe un test que falle, hazlo pasar, refactoriza. Red-Green-Refactor con ejemplos reales en Python, JavaScript y Java.
Guía de Estrategia de Testing
Una guía práctica para construir una estrategia de testing en capas con unit, integration y end-to-end tests.
No se encontraron resultados.