Я сам не пробовал ничего из этого, я только что вспомнил, что видел нечто подобное в исходном коде CTest.
Я нашел переменную с именем CTEST_TIME_LIMIT, которая должна делать то, что вы хотите, но, похоже,работает только в том случае, если вы запускаете тесты из сценария CTest.
Кажется также, что есть аргумент --stop-time для ctest, который принимает время суток, когда все тесты должны прекратиться.На самом деле я не могу придумать, как использовать это, если не запускать все тесты вручную.