Как тест google делает тестовую последовательность

как google-test делает тестовую последовательность (or order of test case execution) для тестирования, тестовых случаев?

Предположим, у меня есть 5 тестовых случаев.

TEST(First, first)
TEST(Secnd, secnd)
TEST(Third, third)
...
TEST(Fifth, fifth)

как

3 ответов


расширенные справочные страницы для googletest в главе перетасовка тестов говорит :

по умолчанию Google Test использует случайное семя, вычисленное из текущего времени. Поэтому каждый раз вы будете получать новый заказ.

Это действительно хороший способ модульного тестирования, так как тесты не должны зависеть от порядка выполнения.

насколько я знаю, нет никаких способов установить порядок выполнения тестов. Этот единственный параметр, который вы можете установить, - это семя, используемое для установки того же порядка выполнения.


по умолчанию он будет проверять их в том порядке, в котором он находит их во время ссылки, что будет зависеть от ваших инструментов.

вы можете выберите, какие тесты, например, подмножество, или один тест.

существует также возможность запустить их в случайном порядке.


по умолчанию они выполняются в порядке объявления. Как сказал другой, вы должны предоставить флаг --gtest_shuffle чтобы перетасовать их.