Spec-Zone.ru › CMake 3.23

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()), он будет автоматически заменён местоположением исполняемого файла, созданного во время сборки.

Команда может быть указана с использованием generator expressions.

CONFIGURATIONS

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

WORKING_DIRECTORY

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

Рабочая директория может быть указана с использованием generator expressions.

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.

Тесты, добавленные с подписью add_test(NAME), поддерживают использование generator expressions в свойствах тестов, установленных с помощью set_property(TEST) или set_tests_properties().

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

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

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

Примечание

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

Эта команда также поддерживает более простую, но менее гибкую подпись:

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

Добавить тест с именем <name> с указанной командной строкой.

В отличие от вышеприведённой NAME подписи, имена целевых объектов не поддерживаются в командной строке. Кроме того, тесты, добавленные с этой подписью, не поддерживают generator expressions в командной строке или свойствах тестов.

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

Spec-Zone.ru

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