How to run specific test cases in GoogleTest

c++, googletest, visual-studio-2010

Solution

You could use advanced options to run Google tests.

To run only some unit tests you could use `--gtest_filter=Test_Cases1*` command line option with value that accepts the `*` and `?` wildcards for matching with multiple tests. I think it will solve your problem.

UPD:

Well, the question was how to run specific test cases. Integration of gtest with your GUI is another thing, which I can't really comment, because you didn't provide details of your approach. However I believe the following approach might be a good start:

- Get all testcases by running tests with `--gtest_list_tests`

- Parse this data into your GUI

- Select test cases you want ro run

- Run test executable with option `--gtest_filter`

Problem

I am trying to write a function/method for my project, which will ask to user which all test cases are you going to run? It looks like below..., ``` Test_Cases_1 |_TestNo1 |_TestNo2....so on Test_Cases_2 |_TestNo1 |_TestNo2....so on .... ....so on Test_Cases_N |_TestNo1 |_TestNo2....so on ``` So, now the challenge is while running the project it should prompt me what all test cases you would like to execute? If I select `Test_Cases_1` and `Test_Cases_N`. Then it should execute these two test cases and should exclude all other from `Test_Cases_2 to ....`. In result window also I would like to see the results of `Test_Cases_1` and `Test_Cases_N`. So, if I will see the GoogleTest, there is a method called `test_case_to_run_count()`; But all the `test cases` are getting registered with Test_F() method. So, I did lots of analysis, but still did not find any solution. Please help me.

Original source