Spec-Zone.ru › CMake 3.20

add_test

Добавить тест в проект, который будет запущен ctest(1).

add_test(NAME <name> COMMAND <command> [<arg>...]
         [CONFIGURATIONS <config>...]
         [WORKING_DIRECTORY <dir>]
         [COMMAND_EXPAND_LISTS])

Добавляет тест с именем <name>. Имя теста может содержать произвольные символы, выраженные как Цитата или Скобка, если необходимо. См. политику CMP0110. Доступны следующие опции:

COMMAND

Указывает командную строку для теста. Если <command> указывает исполняемый целевой объект (созданный с помощью add_executable()), он автоматически заменится расположением исполняемого файла, созданного на этапе сборки.

CONFIGURATIONS

Ограничить выполнение теста только для указанных конфигураций.

WORKING_DIRECTORY

Устанавливает свойство теста WORKING_DIRECTORY для указания рабочей директории для выполнения теста. Если не указано, тест будет выполняться в текущей рабочей директории, которая соответствует текущей директории исходного кода.

COMMAND_EXPAND_LISTS

Новая версия 3.16.

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

Ожидается, что данный командный интерпретатор теста завершится с кодом 0 для успешного выполнения и ненулевым кодом для неудачи, или наоборот, если установлено свойство теста WILL_FAIL. Любой вывод в stdout или stderr будет пойман ctest(1), но не повлияет на статус успешности/неудачи, если не используется свойство теста PASS_REGULAR_EXPRESSION, FAIL_REGULAR_EXPRESSION или SKIP_REGULAR_EXPRESSION.

Новая в версии 3.16: Добавлено свойство SKIP_REGULAR_EXPRESSION.

Опции COMMAND и WORKING_DIRECTORY могут использовать «генераторные выражения» с синтаксисом $<...>. См. руководство cmake-generator-expressions(7) для доступных выражений.

Пример использования:

add_test(NAME mytest
         COMMAND testDriver --config $<CONFIG>
                            --exe $<TARGET_FILE:myexe>)

Это создает тест mytest, чья команда запускает инструмент testDriver, передавая имя конфигурации и полный путь к исполняемому файлу, созданному целевым объектом myexe.

Примечание

CMake сгенерирует тесты только в том случае, если команда enable_testing() была вызвана. Модуль CTest вызывает команду автоматически, если опция BUILD_TESTING не отключена.

add_test(<name> <command> [<arg>...])

Добавить тест под названием <name> с данной командной строкой. В отличие от вышеупомянутой подписи NAME, преобразование командной строки для поддержки имен целевых объектов или генераторных выражений не выполняется.

© 2000–2021 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.20/command/add_test.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API