FIXTURES_CLEANUP
Добавлен в версии 3.7.
Указывает список фикстур, для которых тест должен рассматриваться как тест очистки. Эти имена фикстур отличаются от имён тестовых случаев и не обязательно должны иметь сходство с именами тестов, связанных с ними.
Тесты очистки фикстур являются обычными тестами со всей обычной функциональностью тестов. Установка свойства FIXTURES_CLEANUP для теста имеет два основных эффекта:
- CTest гарантирует, что тест выполняется после всех остальных тестов, которые перечисляют какие-либо фикстуры в своём свойстве
FIXTURES_REQUIRED. - Если CTest запрошено запустить только подмножество тестов (например, используя регулярные выражения или опцию
--rerun-failed), и тест очистки не входит в набор выполняемых тестов, он будет автоматически добавлен, если какие-либо тесты в наборе требуют каких-либо фикстур, перечисленных вFIXTURES_CLEANUP.
Тест очистки может иметь несколько фикстур, перечисленных в его свойстве FIXTURES_CLEANUP. Он будет выполняться только один раз для всего выполнения CTest, а не один раз для каждой фикстуры. Фикстура также может иметь более одного определённого теста очистки. Если для фикстуры определено несколько тестов очистки, проекты могут контролировать их порядок с помощью обычного свойства теста DEPENDS, если это необходимо.
Тест очистки может потребовать других фикстур, но не любых фикстур, перечисленных в его свойстве FIXTURES_CLEANUP. Например:
# Ok: Dependent fixture is different to cleanup set_tests_properties(cleanupFoo PROPERTIES FIXTURES_CLEANUP Foo FIXTURES_REQUIRED Bar ) # Error: cannot require same fixture as cleanup set_tests_properties(cleanupFoo PROPERTIES FIXTURES_CLEANUP Foo FIXTURES_REQUIRED Foo )
Тесты очистки будут выполняться даже если установка или обычные тесты для данной фикстуры завершатся неудачно или будут пропущены.
См. FIXTURES_REQUIRED для более подробного обсуждения того, как использовать фикстуры тестов.
© 2000–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.31/prop_test/FIXTURES_CLEANUP.html