create_test_sourcelist
Создайте программу-драйвер для тестирования, которая связывает множество небольших тестов в один исполняемый файл. Это полезно при создании статических исполняемых файлов с большими библиотеками для уменьшения общего требуемого размера.
-
create_test_sourcelist(<sourceListName> <driverName> <test>... <options>...) -
Генерирует файл исходного кода драйвера тестов из списка отдельных исходных файлов тестов и предоставляет объединённый список исходных файлов, которые могут быть скомпилированы как исполняемый файл.
Доступны следующие опции:
-
<sourceListName> -
Имя переменной, в которой будет храниться список исходных файлов, необходимых для построения драйвера тестов. Список будет содержать
<test>...исходные файлы и сгенерированный<driverName>исходный файл.Изменено в версии 3.29: Исходный файл драйвера тестов перечислен по абсолютному пути в дереве построения. Ранее он был перечислен только как
<driverName>. -
<driverName> -
Имя файла исходного кода драйвера тестов, который будет сгенерирован в дереве построения. Файл исходного кода будет содержать точку входа программы драйвера
main(), которая перенаправляет вызов на тест, указанный в командной строке. -
<test>... -
Исходные файлы тестов, которые должны быть добавлены в бинарный файл драйвера. Каждый исходный файл теста должен содержать функцию с тем же именем, что и файл без расширения. Например, исходный файл теста
foo.cxxможет содержать:int foo(int argc, char** argv)
-
EXTRA_INCLUDE <header> -
Укажите заголовочный файл для
#includeв сгенерированном исходном коде драйвера тестов. -
FUNCTION <function> -
Укажите функцию, которая будет вызываться с указателями на
argcиargv. Функция может быть предоставлена в заголовочном файлеEXTRA_INCLUDE.void function(int* pargc, char*** pargv)
Это может быть использовано для добавления дополнительной обработки командной строки для каждого теста.
-
Кроме того, некоторые переменные CMake влияют на генерацию драйвера тестов:
-
CMAKE_TESTDRIVER_BEFORE_TESTMAIN -
Код, который будет размещён непосредственно перед вызовом функции каждого теста.
-
CMAKE_TESTDRIVER_AFTER_TESTMAIN -
Код, который будет размещён непосредственно после вызова функции каждого теста.
© 2000–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.29/command/create_test_sourcelist.html