Contenido del curso
Introducción
Primeras pruebas con Go
Utilizando mocks
El verdadero valor de tus pruebas
Próximos pasos
Paquetes para realizar assertions
Contenido del curso
Paquetes para realizar assertions
Fernando José Aguilar Rivas
studentNicolás Castro
studentWilmer David Cedeño Mendoza
studentMaría Camila Lenis Restrepo
teacherJozek Andrzej Hajduk Sánchez
studentSebastian Villegas
studentRubens A. Rangel Gomez
studentAdjunto el comando de instalacion de Testify
go get github.com/stretchr/testify
Gracias!
Me estaba dando problemas usar el require asi que decidi ver la documentacion del repositorio, y lo hice de la siguiente forma:
package main import ( "testing" "github.com/stretchr/testify/assert" ) func TestAdd(t *testing.T) { result := Add(20, 2) expected := 22 assert.Equal(t, expected, result) }
Genial Wilmer, de eso se trata: buscar soluciones. No hay una sola forma de hacer las cosas
Acá encuentra el repositorio
Otra manera de hacerlo:
package main import ( "testing" "github.com/stretchr/testify/assert" ) func TestAdd(t *testing.T) { assertions := assert.New(t) result := Add(20, 2) expected := 22 assertions.Equal(expected, result) }
🧠 Idea principal
Las assertions y los mocks son herramientas clave en testing que permiten
validar resultados y simular comportamientos, haciendo las pruebas más claras, controladas y confiables.
🧩 Fundamentos
1. Assertions (aserciones)
Son verificaciones que comparan el resultado real con el esperado.
Permiten decir: “esto debería ser igual a esto”.
Hacen los tests más legibles y fáciles de mantener.
Ejemplo común: assert.Equal(expected, result)
2. Librerías de assertions
En Go, una muy usada es testify.
Se instala con:
go get github.com/stretchr/testify
Ofrece utilidades como assert y require.
3. Diferentes formas de usar assertions
Forma directa:
assert.Equal(t, expected, result)
Forma con instancia:
assertions := assert.New(t)
assertions.Equal(expected, result)
No hay una única forma correcta → importa la claridad.
4. ¿Qué es un mock?
Un mock es una simulación de una función o dependencia real.
Permite controlar el comportamiento de algo externo al test.
Ejemplo: simular una API o base de datos.
5. ¿Para qué sirven los mocks?
Probar código sin depender de servicios externos.
Simular errores o escenarios difíciles.
Verificar que ciertas funciones fueron llamadas.
🔑 Puntos importantes
Las assertions simplifican la validación de resultados.
Hacen los tests más claros y expresivos.
testify es una librería muy usada para esto en Go.
No hay una sola forma correcta de escribir tests.
Los mocks permiten aislar el código que se está probando.
Son esenciales cuando hay dependencias externas (APIs, BD).
Ayudan a probar comportamiento, no solo resultados.
Investigar documentación es parte del proceso (no todo funciona a la primera).
🎯 Conclusión corta
Assertions verifican; mocks simulan.
Ambos son fundamentales para construir tests claros, independientes y confiables.