Estoy tratando de escribir una función / método para mi proyecto, que le preguntará al usuario cuáles son todos los casos de prueba que va a ejecutar. Se ve a continuación ...,
Test_Cases_1
|_TestNo1
|_TestNo2....so on
Test_Cases_2
|_TestNo1
|_TestNo2....so on
....
....so on
Test_Cases_N
|_TestNo1
|_TestNo2....so on
Entonces, ahora el desafío es que mientras se ejecuta el proyecto, debería indicarme cuáles son todos los casos de prueba que le gustaría ejecutar. Si selecciono Test_Cases_1
y Test_Cases_N
. Entonces debería ejecutar estos dos casos de prueba y debería excluir todos los demás de Test_Cases_2 to ....
. En la ventana de resultados también me gustaría ver los resultados de Test_Cases_1
y Test_Cases_N
.
Entonces, si veo GoogleTest, hay un método llamado test_case_to_run_count()
; Pero todos se test cases
están registrando con el método Test_F (). Entonces, hice muchos análisis, pero aún no encontré ninguna solución. Por favor, ayúdame.
fuente
Tree
deTestCases
yTestNo
. Entonces, ¿crees que--gtest_filter=..
te ayudará?int main(int argc, char **argv) { //::testing::GTEST_FLAG(list_tests) = true; // For Testing InitGoogleTest(&argc, argv); ::testing::GTEST_FLAG(list_tests) = true; ........ RUN_ALL_TEST();...}
Pero imprime solo el Testcase y TestNo. y pero no ejecuta las pruebas. Entonces, ¿cómo puedo ejecutar las pruebas ahora?Resumiendo las respuestas de @Rasmi Ranjan Nayak y @nogard y agregando otra opción:
En la consola
Deberías usar la bandera
--gtest_filter
, como(También puede hacer esto en Propiedades | Propiedades de configuración | Depuración | Argumentos de comando)
En el medio ambiente
Deberías establecer la variable
GTEST_FILTER
comoEn el código
Deberías poner una bandera
filter
, comode modo que su función principal se convierta en algo así como
Consulte la sección Ejecución de un subconjunto de las pruebas para obtener más información sobre la sintaxis de la cadena que puede utilizar.
fuente
Finalmente obtuve una respuesta,
::test::GTEST_FLAG(list_tests) = true;
// De su programa, no de la consola.Si desea usar
--gtest_filter =*;
/* =*, =xyz*... etc*/
// Necesita usarlos en Console.Entonces, mi requisito es usarlos desde el programa, no desde la consola.
Updated:-
Finalmente obtuve la respuesta para actualizar el mismo desde el programa.
Entonces, gracias por todas las respuestas.
Ustedes son geniales.
fuente