Estou tentando escrever uma função / método para o meu projeto, que perguntará ao usuário quais todos os casos de teste você executará? Parece abaixo ...,
Test_Cases_1
|_TestNo1
|_TestNo2....so on
Test_Cases_2
|_TestNo1
|_TestNo2....so on
....
....so on
Test_Cases_N
|_TestNo1
|_TestNo2....so on
Portanto, agora, o desafio é executar o projeto, que deve me perguntar o que todos os casos de teste você gostaria de executar? Se eu selecionar Test_Cases_1
e Test_Cases_N
. Em seguida, ele deve executar esses dois casos de teste e excluir todos os outros de Test_Cases_2 to ....
. Na janela de resultados também gostaria de ver os resultados de Test_Cases_1
e Test_Cases_N
.
Então, se eu vou ver o GoogleTest, existe um método chamado test_case_to_run_count()
; Mas todos test cases
estão sendo registrados com o método Test_F (). Então, fiz muitas análises, mas ainda não encontrei nenhuma solução. Por favor me ajude.
fonte
Tree
deTestCases
eTestNo
. Então, você acha que--gtest_filter=..
vai ajudar?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();...}
Mas imprime apenas o Testcase e o TestNo. e mas não executa os testes. Então, como posso executar os testes agora?Resumindo as respostas @Rasmi Ranjan Nayak e @nogard e adicionando outra opção:
No console
Você deve usar a bandeira
--gtest_filter
, como(Você também pode fazer isso em Propriedades | Propriedades de configuração | Depuração | Argumentos de comando)
No ambiente
Você deve definir a variável
GTEST_FILTER
comoNo código
Você deve definir uma bandeira
filter
, comode modo que sua função principal se torne algo como
Consulte a seção Executando um subconjunto dos testes para obter mais informações sobre a sintaxe da string que você pode usar.
fonte
Finalmente, recebi uma resposta:
::test::GTEST_FLAG(list_tests) = true;
// Do seu programa, não do console errado.Se você gostaria de usar
--gtest_filter =*;
/* =*, =xyz*... etc*/
//, você precisa usá-los no console.Portanto, minha exigência é usá-los no programa e não no console.
Updated:-
Finalmente, recebi a resposta para atualizar o mesmo no programa.
Então, obrigado por todas as respostas.
Vocês são ótimos.
fonte