Parece que simplemente poner un say
, print
, etc. en un .t
no funciona. La salida está oculta. Entonces, cuando se usan Test::More
y Test::Tester
, ¿cómo puedo simplemente imprimir algo? Quiero esto para poder jugar con algún código y determinar cómo probarlo. nota: está bien si se envía a stderr o solo se puede ver usando verbose. También me sequé usando diag
pero eso no pareció funcionar en ningún lugar de la prueba.¿Cómo puede simplemente enviar información a stdout en una prueba?
9
A
Respuesta
13
Si ejecuta un script de prueba directamente, verá el resultado de print
- las pruebas son solo código Perl. Sin embargo, si ejecuta las pruebas con un arnés, lo que ve en la salida estará determinado por el arnés, especialmente su nivel de detalle, y por si imprime en STDOUT
o STDERR
.
Por otra manera de imprimir mensajes dentro de las pruebas, consulte Diagnostics en la documentación para Test::More
, en particular:
diag(...);
note(...);
Experimentando con un guión como este ilustrarán rápidamente cómo funcionan las cosas:
# Example usages:
# perl some_test.t # We see everything in output.
# prove some_test.t # We see only diag() and STDERR.
# prove -v some_test.t # Everything again.
# In some_test.t
use strict;
use warnings;
use Test::More;
pass;
diag("diag()");
note("note()");
print "STDOUT\n";
print STDERR "STDERR\n";
done_testing;
Cuestiones relacionadas
- 1. Enviar JNI C stderr/stdout a log4j
- 2. ¿Cómo puedo enviar la salida de Perl a STDOUT y a una variable?
- 3. Redirigir stdout a una cadena en Java
- 4. Google Map API v3 ~ Simplemente cierre una ventana de información?
- 5. Enviar notificación a Jenkins solo cuando falle la nueva prueba
- 6. La prueba falla en la prueba si escribe en stdout sin nueva línea
- 7. Obtenga STDOUT en una variable
- 8. Cómo redireccionar stdout, stderr a/dev/tty
- 9. Cómo enviar información adicional en el correo electrónico de nagios
- 10. ¿Cómo puede aparecer cerr (C++) en Stdout (Java)?
- 11. no se puede enviar a github: todo al día
- 12. Cómo ocultar temporalmente stdout o stderr mientras se ejecuta una prueba de unidad en Python
- 13. ¿Cómo enviar eventos clave a un emulador sin cabeza en una prueba de instrumentación?
- 14. ¿Cómo redirigir salida stdout a una nueva pestaña Vim?
- 15. ¿Cómo simplemente atar esto a ConverterParameter?
- 16. ¿Puede enviar datos desde una página web a Flurry Analytics?
- 17. ¿Cómo enviar las teclas a una ventana?
- 18. ¿Los selectores en Objective-C son simplemente otra forma de enviar un mensaje a un objeto?
- 19. ¿Cómo hacer una prueba a prueba de su aplicación wpf?
- 20. ¿Debo emitir advertencias a STDERR o STDOUT?
- 21. Cómo unificar la escritura de la función de prueba a stdout/std :: cout
- 22. ¿Cómo enviar datos desde BroadcastReceiver a una actividad en android?
- 23. Duplicar stdout a stderr
- 24. ¿Cómo puede enviar datos a un cliente de página web?
- 25. No se puede enviar master a heroku
- 26. Guardar stdout, stderr y stdout + stderr sincrónicamente
- 27. ¿Puede SQL Server enviar una solicitud web?
- 28. Cómo redirigir STDOUT y STDERR a una variable
- 29. ¿Cómo se puede enviar correos electrónicos a apache?
- 30. C++ Indicador FILE a stdout?
I de alguna manera se perdió totalmente la función 'nota' en los documentos – xenoterracide