Утверждения ведут себя по-разному на разных платформах. Если они распечатают сообщение и прекратят выполнение программы на вашем компьютере, вы можете использовать Google Test death tests для их проверки. Поместите оператор, который должен завершить программу, в макрос EXPECT_DEATH
:
EXPECT_DEATH(MyFunction(with_argument_that_causes_it_to_abort), "");
Это запустит оператор в подпроцессе и проверит, что оператор завершает его. Вы можете указать регулярное выражение во втором параметре, чтобы оно соответствовало выходным данным подпроцесса. Этот макрос был создан специально для проверки вызовов типа assert.
Код, созданный в Visual Studio, может отображать диалоговое окно и ждать реакции пользователя вместо печати сообщения, что делает тесты на смерть неудобными. Но вы должны иметь возможность настроить поведение утверждения, чтобы не делать этого.