Spec-Zone.ru › CMake 3.11

add_test

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

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

Добавить тест с именем <name>. Имя теста не должно содержать пробелы, кавычки или другие символы, являющиеся специальными в синтаксисе CMake. Доступные параметры:

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

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

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

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

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

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

Примечание

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

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

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

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

Spec-Zone.ru

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