¿Existe una opción para mostrar solo las pruebas fallidas? Tuve que cambiar para usar la guitarra para lograr esto, pero echo de menos la herramienta de línea de comandos.Configure gtest para mostrar la prueba fallida solo en la consola
Respuesta
De acuerdo con la documentación, puede cambiar la salida utilizando Test Events. Mira aquí (también hay un ejemplo): https://github.com/google/googletest/blob/master/googletest/docs/AdvancedGuide.md#extending-google-test-by-handling-test-events
Hay dos formas de lograr esto.
primero es escribir su propio detector de eventos:
http://code.google.com/p/googletest/wiki/V1_6_AdvancedGuide#Defining_Event_Listeners
Otra forma es filtrar la entrada del detector de eventos googletest recibe.
Por esta approache se quita el detector de eventos actuales y compartir con su propio
testing::TestEventListeners& listeners = testing::UnitTest::GetInstance()->listeners();
testing::TestEventListener* listener = listeners.Release(listeners.default_result_printer());
listeners.Append(new FailurePrinter(listener));
donde FailurePrinter es su propia clase de detector de eventos.
Esta clase debe tener este aspecto
class FailurePrinter : public ::testing::TestEventListener {
public:
FailurePrinter(TestEventListener* listener) : TestEventListener() {_listener = listener;}
virtual void OnTestProgramStart(const UnitTest& unit_test);
virtual void OnTestIterationStart(const UnitTest& unit_test, int iteration);
virtual void OnEnvironmentsSetUpStart(const UnitTest& unit_test);
virtual void OnEnvironmentsSetUpEnd(const UnitTest& unit_test);
virtual void OnTestCaseStart(const TestCase& test_case);
virtual void OnTestStart(const TestInfo& test_info);
virtual void OnTestPartResult(const TestPartResult& result);
virtual void OnTestEnd(const TestInfo& test_info);
virtual void OnTestCaseEnd(const TestCase& test_case);
virtual void OnEnvironmentsTearDownStart(const UnitTest& unit_test);
virtual void OnEnvironmentsTearDownEnd(const UnitTest& unit_test);
virtual void OnTestIterationEnd(const UnitTest& unit_test, int iteration);
virtual void OnTestProgramEnd(const UnitTest& unit_test);
protected:
testing::TestEventListener* _listener;
};
Ahora usted tiene que poner en práctica todos los métodos.
Si le gusta la forma en que el detector de eventos de google imprime algo, solo delegue la llamada al _listener.
O puede modificar el resultado. Por ejemplo:
void FailurePrinter::OnTestPartResult(const TestPartResult& test_part_result)
{
if (test_part_result.failed())
{
_listener->OnTestPartResult(test_part_result);
printf("\n");
}
}
sólo se Testfailures de impresión.
Me encontré con el mismo problema, como estoy seguro de que muchas otras personas tienen. Así que creé esto:
https://gist.github.com/elliotchance/8215283
En caso de ser más o menos pasta y jugar.
Escribí Google Test Pretty Printer, una prueba de escucha/impresora bonita para Google Test, para proporcionar una salida de consola más limpia y atractiva para los programas de prueba de Google. Incluye una opción --failures-only
que debe hacer lo que desee.
- 1. Mostrar solo errores en la consola de desarrollo de Chrome
- 2. Vuelva a ejecutar la última prueba fallida en PHPUnit
- 3. Uso de gtest en jenkins
- 4. rutas de prueba en la consola
- 5. Mostrar caracteres UTF-8 en la consola
- 6. Configure IntelliJ para imprimir la salida estándar en la ventana de la consola pero también guárdela en el archivo
- 7. Configure Velocity para que falle en la variable $ undefined
- 8. IcedTea - cómo mostrar la consola de applet ..?
- 9. Mostrar solo la rama actual en Git
- 10. ¿Cómo mostrar el objeto completo en la consola de Chrome?
- 11. DownloadManager envía STATUS_SUCCESSFUL para la descarga fallida
- 12. ¿Cómo puedo mostrar más decimales en la consola de salida?
- 13. maven - construcción fallida cuando la prueba de la unidad lleva demasiado tiempo
- 14. Cómo configurar el Marco de prueba de Google C++ (gtest) en Visual Studio 2005
- 15. Cómo mostrar UTF-8 en la consola de Windows
- 16. Mostrar/Ocultar la ventana de la consola de una aplicación de consola C#
- 17. Enviar notificación a Jenkins solo cuando falle la nueva prueba
- 18. Maven: cómo manejar las fuentes generadas para la prueba (solo)?
- 19. iframe para mostrar solo una parte determinada de la página
- 20. Cómo hacer que Eclipse salte a la prueba de JUnit fallida cuando la prueba no es un método Java
- 21. Mostrar mensaje solo para la primera página cargar
- 22. al hacer GTest
- 23. Mostrar solo publicaciones creadas la semana pasada
- 24. Tengo problemas solo para mostrar Highchart
- 25. Gtest: referencias no definidas
- 26. Romper el depurador en la aserción fallida
- 27. ItextSharp (Itext): configure la fuente personalizada para el párrafo
- 28. Cómo mostrar los elementos de la lista en la ventana de la consola en C#
- 29. Paperclip y validación fallida: evitar la recarga
- 30. Mostrar texto en hebreo en una consola
Esta debería ser la respuesta aceptada – Purefan