Prueba de módulos Go anidados
Ejecutar la prueba de go puede ser un desafío cuando se trabaja con múltiples módulos Go. El enfoque tradicional de usar go test./... fallará con un error que indicará que no hay paquetes coincidentes o que no hay paquetes para probar.
Esto se debe a que go test está diseñado para funcionar en un solo módulo, no en varios. Para probar módulos anidados, se requiere un enfoque diferente.
Una solución implica usar un truco de shell para ejecutar go test en cada módulo individualmente. Por ejemplo, puede usar buscar para buscar directorios que contengan archivos go.mod y ejecutar go test dentro de cada uno de esos directorios:
find . -type d -name go.mod -exec go test {}
Como alternativa, puede crear un script auxiliar o Makefile para recorrer los directorios deseados y ejecutar go test en consecuencia:
# test.sh
#!/bin/bash
for dir in */; do
if [ -f "$dir/go.mod" ]; then
go test "$dir"
fi
done
Algunos proyectos más grandes pueden mantener una lista de todos los submódulos y utilizar scripts como el del ejemplo anterior para facilitar las pruebas.
Al emplear estas técnicas, puede ejecutar pruebas de manera efectiva en múltiples sistemas anidados. Ir a módulos desde un directorio principal.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3