Spec-Zone.ru › CMake 3.7

ctest(1)

Краткое описание

ctest [<options>]

Описание

Исполняемый файл «ctest» — это программа-драйвер тестов CMake. Деревья сборки, сгенерированные CMake для проектов, использующих команды ENABLE_TESTING и ADD_TEST, поддерживают тестирование. Эта программа выполнит тесты и сообщит результаты.

Параметры

-C <cfg>, --build-config <cfg>

Выбор конфигурации для тестирования.

Некоторые сгенерированные CMake деревья сборки могут содержать несколько конфигураций сборки в одном дереве. Этот параметр позволяет указать, какая из них должна быть протестирована. Примерами конфигураций являются «Debug» и «Release».

-V,--verbose

Включение подробного вывода тестов.

Вывод тестов обычно подавляется, и отображается только сводная информация. Этот параметр покажет весь вывод тестов.

-VV,--extra-verbose

Включение более подробного вывода тестов.

Вывод тестов обычно подавляется, и отображается только сводная информация. Этот параметр покажет ещё больше вывода тестов.

--debug

Отображение более подробной внутренней информации CTest.

Эта функция приведет к большому количеству вывода, который в основном полезен для отладки проблем с панелью инструментов.

--output-on-failure
Вывод всего, что выводит программа теста, если тест должен завершиться ошибкой. Этот параметр также можно включить, установив переменную окружения CTEST_OUTPUT_ON_FAILURE.
-F

Включение режима отката.

Этот параметр позволяет ctest возобновить выполнение набора тестов, который был ранее прерван. Если прерывания не произошло, параметр -F не повлияет.

-j <jobs>, --parallel <jobs>

Выполнение тестов параллельно с использованием указанного количества задач.

Этот параметр сообщает ctest о выполнении тестов параллельно с использованием указанного количества задач. Этот параметр также можно установить, задав переменную среды CTEST_PARALLEL_LEVEL.

--test-load <level>

Во время выполнения тестов параллельно (например, с помощью -j) старайтесь не запускать тесты, которые могут привести к превышению заданного порога загрузки ЦП.

Когда ctest выполняется как клиент панели инструментов, это устанавливает параметр TestLoad шага теста CTest.

-Q,--quiet

Сделать ctest тихим.

Этот параметр подавит весь вывод. Файл журнала вывода по-прежнему будет сгенерирован, если указан --output-log. Параметры, такие как --verbose, --extra-verbose, и --debug, игнорируются, если указан --quiet.

-O <file>, --output-log <file>

Вывод в файл журнала.

Этот параметр сообщает ctest записывать весь свой вывод в файл журнала.

-N,--show-only

Отключение фактического выполнения тестов.

Этот параметр сообщает ctest отобразить тесты, которые будут выполнены, но не фактически их выполнять. Полезно в сочетании с параметрами -R и -E.

-L <regex>, --label-regex <regex>

Выполнение тестов с метками, соответствующими регулярному выражению.

Этот параметр сообщает ctest выполнить только тесты, метки которых соответствуют заданному регулярному выражению.

-R <regex>, --tests-regex <regex>

Выполнение тестов, соответствующих регулярному выражению.

Этот параметр сообщает ctest выполнить только тесты, имена которых соответствуют заданному регулярному выражению.

-E <regex>, --exclude-regex <regex>

Исключение тестов, соответствующих регулярному выражению.

Этот параметр сообщает ctest НЕ выполнять тесты, имена которых соответствуют заданному регулярному выражению.

-LE <regex>, --label-exclude <regex>

Исключение тестов с метками, соответствующими регулярному выражению.

Этот параметр сообщает ctest НЕ выполнять тесты, метки которых соответствуют заданному регулярному выражению.

-D <dashboard>, --dashboard <dashboard>

Выполнение теста панели инструментов.

Этот параметр сообщает ctest действовать как клиент CDash и выполнить тест панели инструментов. Все тесты имеют вид <Mode><Test>, где Mode может быть Experimental, Nightly и Continuous, а Test может быть Start, Update, Configure, Build, Test, Coverage и Submit.

-D <var>:<type>=<value>

Определение переменной для режима сценария.

Передача значений переменных в командной строке. Используйте в сочетании с -S для передачи значений переменных в сценарий панели инструментов. Парсинг -D аргументов в качестве значений переменных выполняется только в том случае, если значение, следующее за -D, не соответствует ни одному из известных типов панели инструментов.

-M <model>, --test-model <model>

Устанавливает модель для панели инструментов.

Этот параметр сообщает ctest действовать как клиент CDash, где <model> может быть Experimental, Nightly, и Continuous. Объединение -M и -T аналогично -D.

-T <action>, --test-action <action>

Устанавливает действие панели инструментов, которое необходимо выполнить.

Этот параметр сообщает ctest действовать как клиент CDash и выполнить некоторое действие, такое как start, build, test и т. д. Полный список действий см. в разделе Шаги клиента панели инструментов. Объединение -M и -T аналогично -D.

--track <track>

Укажите трек, в который следует отправить панель инструментов

Отправьте панель инструментов в указанный трек вместо стандартного. По умолчанию панель инструментов отправляется в трек Nightly, Experimental или Continuous, но с помощью этого параметра можно указать произвольный трек.

-S <script>, --script <script>

Выполнение панели инструментов для конфигурации.

Этот параметр сообщает ctest загрузить сценарий конфигурации, который устанавливает ряд параметров, таких как бинарные и исходные каталоги. Затем ctest выполнит необходимые действия для создания и запуска панели инструментов. Этот параметр в основном настраивает панель инструментов и затем выполняет ctest -D с соответствующими параметрами.

-SP <script>, --script-new-process <script>

Выполнение панели инструментов для конфигурации.

Этот параметр выполняет те же операции, что и -S, но выполняет их в отдельном процессе. Это в первую очередь полезно в тех случаях, когда скрипт может изменить среду, и вы не хотите, чтобы изменённая среда повлияла на другие -S скрипты.

-A <file>, --add-notes <file>

Добавление файла заметок при отправке.

Этот параметр сообщает ctest включить файл заметок при отправке панели инструментов.

-I [Start,End,Stride,test#,test#|Test file], --tests-information

Выполнение определённого количества тестов по номеру.

Этот параметр заставляет ctest запускать тесты, начиная с номера Start, заканчивая номером End и с шагом Stride. Все дополнительные числа после Stride рассматриваются как отдельные номера тестов. Start, End или Stride могут быть пустыми. Дополнительно можно указать файл, содержащий тот же синтаксис, что и в командной строке.

-U, --union

Взять объединение -I и -R.

Когда оба -R и -I указаны, по умолчанию выполняется пересечение тестов. Указав -U, вместо этого выполняется объединение тестов.

--rerun-failed

Запуск только тех тестов, которые завершились ошибкой ранее.

Этот параметр сообщает ctest выполнить только те тесты, которые завершились ошибкой во время предыдущего запуска. При указании этого параметра ctest игнорирует все другие параметры, предназначенные для изменения списка запускаемых тестов (-L, -R, -E, -LE, -I, и т. д.). В случае, если CTest выполнится, и ни один тест не завершится ошибкой, последующие вызовы ctest с параметром --rerun-failed будут запускать набор тестов, которые в последний раз завершились ошибкой (если таковые имелись).

--repeat-until-fail <n>

Требуется, чтобы каждый тест выполнялся <n> раз без ошибок, чтобы пройти.

Это полезно для выявления спорадических ошибок в тестовых случаях.

--max-width <width>

Установить максимальную ширину имени теста для вывода.

Установите максимальную ширину каждого имени теста для отображения в выводе. Это позволяет пользователю расширить вывод, чтобы избежать обрезки имени теста, что может быть очень раздражающим.

--interactive-debug-mode [0|1]

Установить интерактивный режим в 0 или 1.

Этот параметр заставляет ctest запускать тесты либо в интерактивном режиме, либо в неинтерактивном. В Windows это означает, что в неинтерактивном режиме все всплывающие окна отладки системы блокируются. В режиме панели инструментов (Experimental, Nightly, Continuous) значение по умолчанию — неинтерактивный. При запуске только тестов, не предназначенных для панели инструментов, значение по умолчанию — разрешить всплывающие окна и интерактивную отладку.

--no-label-summary

Отключение сводной информации о времени для меток.

Этот параметр сообщает ctest не выводить сводную информацию для каждой метки, связанной с запущенными тестами. Если у тестов нет меток, ничего дополнительного не печатается.

--build-and-test <path-to-source> <path-to-build>

Настройка, создание и запуск теста.

Этот параметр сообщает ctest настроить (т. е. выполнить cmake), создать и/или выполнить тест. Шаги настройки и тестирования необязательны. Аргументы этой командной строки — это исходный и бинарный каталоги. Параметр --build-generator обязателен для использования --build-and-test. Если указан --test-command, он будет запущен после завершения сборки. Другие параметры, влияющие на этот режим, — --build-target, --build-nocmake, --build-run-dir, --build-two-config, --build-exe-dir, --build-project, --build-noclean и --build-options.

--build-target

Укажите конкретную цель для построения.

Этот параметр используется вместе с --build-and-test параметром. Если его нет, строятся цели all.

--build-nocmake

Выполнение сборки без предварительного запуска cmake.

Пропустить шаг cmake.

--build-run-dir

Укажите каталог для запуска программ.

Каталог, в котором программы будут находиться после компиляции.

--build-two-config
Выполнить CMake дважды.
--build-exe-dir
Укажите каталог для исполняемого файла.
--build-generator
Укажите генератор для использования. См. руководство cmake-generators(7).
--build-generator-platform
Укажите платформу, специфичную для генератора.
--build-generator-toolset
Укажите набор инструментов, специфичный для генератора.
--build-project
Укажите имя проекта для сборки.
--build-makeprogram
Переопределить программу make, выбранную CTest, указанной программой.
--build-noclean
Пропустить шаг make clean.
--build-config-sample
Образец исполняемого файла, используемый для определения конфигурации, которая должна использоваться. Например, Debug/Release/и т. д.
--build-options

Добавить дополнительные параметры к этапу сборки.

Этот параметр должен быть последним, за исключением --test-command

--test-command
Тест для выполнения с параметром --build-and-test
--test-output-size-passed <size>
Ограничить вывод для пройденных тестов до <size> байтов.
--test-output-size-failed <size>
Ограничить вывод для не пройденных тестов до <size> байтов.
--test-timeout
Лимит времени в секундах, только для внутреннего использования.
--tomorrow-tag

Ежедневные или экспериментальные запуски начинаются со следующего дня.

Это полезно, если сборка не завершится за один день.

--ctest-config

Файл конфигурации, используемый для инициализации состояния CTest при отправке на панели управления.

Этот параметр указывает CTest использовать другой файл инициализации вместо CTestConfiguration.tcl. Таким образом, можно использовать несколько файлов инициализации, например, для отправки на несколько панелей управления.

--overwrite

Перезаписать параметр конфигурации CTest.

По умолчанию ctest использует параметры конфигурации из файла конфигурации. Этот параметр перепишет параметр конфигурации.

--extra-submit <file>[;<file>]

Отправить дополнительные файлы на панель управления.

Этот параметр отправит дополнительные файлы на панель управления.

--force-new-ctest-process

Запустить дочерние экземпляры CTest как новые процессы.

По умолчанию CTest запускает дочерние экземпляры CTest в рамках одного процесса. Если такое поведение нежелательно, этот аргумент принудительно запустит дочерние процессы CTest в новых процессах.

--schedule-random

Использовать случайный порядок для планирования тестов.

Этот параметр выполнит тесты в случайном порядке. Это обычно используется для обнаружения неявных зависимостей в наборе тестов.

--submit-index
Параметр устаревшего формата для старой функции сервера панели управления Dart2. Не использовать.
--timeout <seconds>

Установить глобальный таймаут для всех тестов.

Этот параметр установит глобальный таймаут для всех тестов, которые еще не имеют установленного таймаута.

--stop-time <time>

Установить время, когда все тесты должны завершить работу.

Установить реальное время суток, когда все тесты должны выйти из таймаута. Пример: 7:00:00 -0400. Любой формат времени, понятный парсеру даты curl, принимается. Если часовой пояс не указан, предполагается местное время.

--http1.0

Отправить используя HTTP 1.0.

Этот параметр принудительно заставит CTest использовать HTTP 1.0 для отправки файлов на панель управления вместо HTTP 1.1.

--no-compress-output

Не сжимать вывод тестов при отправке.

Этот флаг отключит автоматическое сжатие вывода тестов. Используйте его для сохранения совместимости со старой версией CDash, которая не поддерживает сжатый вывод тестов.

--print-labels

Распечатать все доступные метки тестов.

Этот параметр не будет запускать тесты, он просто распечатает список всех меток, связанных с набором тестов.

--help,-help,-usage,-h,-H,/?

Вывести информацию об использовании и завершить работу.

Информация об использовании описывает базовый интерфейс командной строки и его параметры.

--version,-version,/V [<f>]

Показать баннер с именем/версией программы и завершить работу.

Если файл указан, версия записывается в него. Справка выводится в указанный файл <f> если он задан.

--help-full [<f>]

Распечатать все руководства по справке и выйти.

Все руководства выводятся в удобочитаемом текстовом формате. Справка выводится в указанный файл <f> если он задан.

--help-manual <man> [<f>]

Распечатать одно руководство по справке и выйти.

Указанное руководство выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f> если он задан.

--help-manual-list [<f>]

Показать список доступных руководств по справке и выйти.

Список содержит все руководства, для которых справка может быть получена с использованием параметра --help-manual за которым следует имя руководства. Справка выводится в указанный файл <f> если он задан.

--help-command <cmd> [<f>]

Вывести справку по одной команде и завершить работу.

Запись справки cmake-commands(7) для <cmd> выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f> если он задан.

--help-command-list [<f>]

Показать список команд со справкой и выйти.

Список содержит все команды, для которых справка может быть получена с использованием параметра --help-command за которым следует имя команды. Справка выводится в указанный файл <f> если он задан.

--help-commands [<f>]

Вывести руководство cmake-commands и завершить работу.

Руководство cmake-commands(7) выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f> если он задан.

--help-module <mod> [<f>]

Вывести справку по одному модулю и завершить работу.

Запись справки cmake-modules(7) для <mod> выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f> если он задан.

--help-module-list [<f>]

Показать список модулей со справкой и выйти.

Список содержит все модули, для которых справка может быть получена с использованием параметра --help-module за которым следует имя модуля. Справка выводится в указанный файл <f> если он задан.

--help-modules [<f>]

Вывести руководство cmake-modules и завершить работу.

Руководство cmake-modules(7) выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f> если он задан.

--help-policy <cmp> [<f>]

Вывести справку по одной политике и завершить работу.

Запись справки cmake-policies(7) для <cmp> выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f> если он задан.

--help-policy-list [<f>]

Показать список политик со справкой и выйти.

Список содержит все политики, для которых справка может быть получена с использованием параметра --help-policy за которым следует имя политики. Справка выводится в указанный файл <f> если он задан.

--help-policies [<f>]

Вывести руководство cmake-policies и завершить работу.

Руководство cmake-policies(7) выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f> если он задан.

--help-property <prop> [<f>]

Вывести справку по одному свойству и выйти.

Записи справки cmake-properties(7) для <prop> выводятся в удобочитаемом текстовом формате. Справка выводится в указанный файл <f> если он задан.

--help-property-list [<f>]

Показать список свойств со справкой и выйти.

Список содержит все свойства, для которых справка может быть получена с использованием параметра --help-property за которым следует имя свойства. Справка выводится в указанный файл <f> если он задан.

--help-properties [<f>]

Вывести руководство cmake-properties и завершить работу.

Руководство cmake-properties(7) выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f> если он задан.

--help-variable <var> [<f>]

Вывести справку по одной переменной и завершить работу.

Запись справки cmake-variables(7) для <var> выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f> если он задан.

--help-variable-list [<f>]

Показать список переменных со справкой и выйти.

Список содержит все переменные, для которых справка может быть получена с использованием параметра --help-variable за которым следует имя переменной. Справка выводится в указанный файл <f> если он задан.

--help-variables [<f>]

Вывести руководство cmake-variables и завершить работу.

Руководство cmake-variables(7) выводится в удобочитаемом текстовом формате. Справка выводится в указанный файл <f> если он задан.

Клиент панели управления

CTest может работать как клиент приложения панели управления качеством программного обеспечения CDash. Как клиент панели управления, CTest выполняет последовательность шагов для настройки, сборки и тестирования программного обеспечения, а затем отправляет результаты на сервер CDash.

Шаги клиента панели управления

CTest определяет упорядоченный список этапов тестирования, некоторые или все из которых могут выполняться как клиент панели управления:

Start
Начать новую отправку в панель мониторинга, которая будет состоять из результатов, записанных следующими шагами. См. раздел Шаг начала CTest ниже.
Update
Обновить дерево исходных кодов из репозитория системы управления версиями. Записать старые и новые версии, а также список обновлённых исходных файлов. См. раздел Шаг обновления CTest ниже.
Configure
Настроить программное обеспечение, выполнив команду в дереве сборки. Записать журнал вывода конфигурации. См. раздел Шаг конфигурации CTest ниже.
Build
Собрать программное обеспечение, выполнив команду в дереве сборки. Записать журнал вывода сборки и обнаружить предупреждения и ошибки. См. раздел Шаг сборки CTest ниже.
Test
Протестировать программное обеспечение, загрузив CTestTestfile.cmake из дерева сборки и выполнив определённые тесты. Записать вывод и результат каждого теста. См. раздел Шаг тестирования CTest ниже.
Coverage
Рассчитать покрытие исходного кода, запустив инструмент анализа покрытия и записав его вывод. См. раздел Шаг покрытия CTest ниже.
MemCheck
Выполнить набор тестов программного обеспечения с помощью инструмента проверки памяти. Записать вывод тестов, результаты и проблемы, сообщённые инструментом. См. раздел Шаг проверки памяти CTest ниже.
Submit
Отправить результаты, записанные с других шагов тестирования, на сервер панели мониторинга качества программного обеспечения. См. раздел Шаг отправки CTest ниже.

Режимы клиента панели мониторинга

CTest определяет три режима работы в качестве клиента панели мониторинга:

Nightly
Этот режим предназначен для вызова один раз в день, обычно ночью. Он по умолчанию включает шаги Start, Update, Configure, Build, Test, Coverage, и Submit. Выбранные шаги выполняются, даже если шаг Update не обнаруживает изменений в дереве исходных кодов.
Continuous
Этот режим предназначен для многократного вызова в течение дня. Он по умолчанию включает шаги Start, Update, Configure, Build, Test, Coverage, и Submit, но завершается после шага Update, если он не обнаруживает изменений в дереве исходных кодов.
Experimental
Этот режим предназначен для вызова разработчиком для тестирования локальных изменений. Он по умолчанию включает шаги Start, Configure, Build, Test, Coverage, и Submit.

Клиент панели мониторинга через командную строку CTest

CTest может выполнять тестирование на уже сгенерированном дереве сборки. Запустите команду ctest с текущей рабочей директорией, установленной в дереве сборки, и используйте одну из следующих подписей:

ctest -D <mode>[<step>]
ctest -M <mode> [ -T <step> ]...

<mode> должен быть одним из режимов клиента панели мониторинга выше, а каждый <step> — одним из шагов клиента панели мониторинга выше.

CTest считывает настройки конфигурации клиента панели мониторинга из файла в дереве сборки с названием CTestConfiguration.ini или DartConfiguration.tcl (названия являются историческими). Формат файла:

# Lines starting in '#' are comments.
# Other non-blank lines are key-value pairs.
<setting>: <value>

где <setting> — имя настройки, а <value> — значение настройки.

В деревьях сборки, сгенерированных CMake, этот конфигурационный файл генерируется модулем CTest, если он включён проектом. Модуль использует переменные для получения значения каждой настройки, как документировано в настройках ниже.

Клиент панели мониторинга через скрипт CTest

CTest может выполнять тестирование, управляемое скриптом cmake-language(7), который создаёт и поддерживает дерево исходных кодов и сборки, а также выполняет шаги тестирования. Запустите команду ctest с текущей рабочей директорией вне любого дерева сборки и используйте одну из этих подписей:

ctest -S <script>
ctest -SP <script>

Файл <script> должен вызывать команды Команды CTest для явного запуска шагов тестирования, как документировано ниже. Команды получают настройки конфигурации клиента панели мониторинга из своих аргументов или из переменных, заданных в скрипте.

Конфигурация клиента панели мониторинга

Шаги клиента панели мониторинга могут быть настроены с помощью именованных настроек, как документировано в следующих разделах.

Шаг запуска CTest

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

В скрипте CTest команда ctest_start() выполняет этот шаг. Аргументы команды могут задавать некоторые настройки шага. Команда сначала выполняет команду, указанную в переменной CTEST_CHECKOUT_COMMAND, если она задана, для инициализации директории исходных кодов.

Настройки конфигурации включают:

BuildDirectory

Полный путь к дереву сборки проекта.

  • Переменная скрипта CTest: CTEST_BINARY_DIRECTORY
  • Переменная модуля CTest: PROJECT_BINARY_DIR
SourceDirectory

Полный путь к дереву исходных кодов проекта.

  • Переменная скрипта CTest: CTEST_SOURCE_DIRECTORY
  • Переменная модуля CTest: PROJECT_SOURCE_DIR

Шаг обновления CTest

В скрипте CTest команда ctest_update() выполняет этот шаг. Аргументы команды могут задавать некоторые настройки шага.

Настройки конфигурации для задания инструмента управления версиями включают:

BZRCommand

bzr инструмент командной строки, используемый, если структура исходного дерева управляется Bazaar.

  • Скрипт CTest переменная: CTEST_BZR_COMMAND
  • CTest переменная модуля: нет
BZRUpdateOptions

Параметры командной строки для BZRCommand при обновлении исходного кода.

  • Скрипт CTest переменная: CTEST_BZR_UPDATE_OPTIONS
  • CTest переменная модуля: нет
CVSCommand

cvs инструмент командной строки, используемый, если структура исходного дерева управляется CVS.

  • Скрипт CTest переменная: CTEST_CVS_COMMAND
  • CTest переменная модуля: CVSCOMMAND
CVSUpdateOptions

Параметры командной строки для CVSCommand при обновлении исходного кода.

  • Скрипт CTest переменная: CTEST_CVS_UPDATE_OPTIONS
  • CTest переменная модуля: CVS_UPDATE_OPTIONS
GITCommand

git инструмент командной строки, используемый, если структура исходного дерева управляется Git.

  • Скрипт CTest переменная: CTEST_GIT_COMMAND
  • CTest переменная модуля: GITCOMMAND

Исходное дерево обновляется с помощью git fetch и git reset --hard в FETCH_HEAD. Результат аналогичен git pull, за исключением того, что все локальные изменения перезаписываются. Используйте GITUpdateCustom, чтобы указать другой подход.

GITInitSubmodules

Если установлено, CTest обновит подмодули репозитория перед обновлением.

  • Скрипт CTest переменная: CTEST_GIT_INIT_SUBMODULES
  • CTest переменная модуля: CTEST_GIT_INIT_SUBMODULES
GITUpdateCustom

Укажите пользовательскую команду (в виде списка, разделённого точкой с запятой), которую нужно выполнить в дереве исходного кода (рабочая область Git), чтобы обновить его вместо запуска GITCommand.

  • Скрипт CTest переменная: CTEST_GIT_UPDATE_CUSTOM
  • CTest переменная модуля: CTEST_GIT_UPDATE_CUSTOM
GITUpdateOptions

Параметры командной строки для GITCommand при обновлении исходного кода.

  • Скрипт CTest переменная: CTEST_GIT_UPDATE_OPTIONS
  • CTest переменная модуля: GIT_UPDATE_OPTIONS
HGCommand

hg инструмент командной строки, используемый, если структура исходного дерева управляется Mercurial.

  • Скрипт CTest переменная: CTEST_HG_COMMAND
  • CTest переменная модуля: нет
HGUpdateOptions

Параметры командной строки для HGCommand при обновлении исходного кода.

  • Скрипт CTest переменная: CTEST_HG_UPDATE_OPTIONS
  • CTest переменная модуля: нет
P4Client

Значение параметра -c для P4Command.

  • Скрипт CTest переменная: CTEST_P4_CLIENT
  • CTest переменная модуля: CTEST_P4_CLIENT
P4Command

p4 инструмент командной строки, используемый, если структура исходного дерева управляется Perforce.

  • Скрипт CTest переменная: CTEST_P4_COMMAND
  • CTest переменная модуля: P4COMMAND
P4Options

Параметры командной строки для P4Command для всех вызовов.

  • Скрипт CTest переменная: CTEST_P4_OPTIONS
  • CTest переменная модуля: CTEST_P4_OPTIONS
P4UpdateCustom

Укажите пользовательскую команду (в виде списка, разделённого точкой с запятой), которую нужно выполнить в дереве исходного кода (дерево Perforce), чтобы обновить его вместо запуска P4Command.

  • Скрипт CTest переменная: нет
  • CTest переменная модуля: CTEST_P4_UPDATE_CUSTOM
P4UpdateOptions

Параметры командной строки для P4Command при обновлении исходного кода.

  • Скрипт CTest переменная: CTEST_P4_UPDATE_OPTIONS
  • CTest переменная модуля: CTEST_P4_UPDATE_OPTIONS
SVNCommand

svn инструмент командной строки, используемый, если структура исходного дерева управляется Subversion.

  • Скрипт CTest переменная: CTEST_SVN_COMMAND
  • CTest переменная модуля: SVNCOMMAND
SVNOptions

Параметры командной строки для SVNCommand для всех вызовов.

  • Скрипт CTest переменная: CTEST_SVN_OPTIONS
  • CTest переменная модуля: CTEST_SVN_OPTIONS
SVNUpdateOptions

Параметры командной строки для SVNCommand при обновлении исходного кода.

  • Скрипт CTest переменная: CTEST_SVN_UPDATE_OPTIONS
  • CTest переменная модуля: SVN_UPDATE_OPTIONS
UpdateCommand

Укажите утилиту командной строки для управления системой контроля версий, не определяя VCS, управляющий деревом исходного кода.

  • Скрипт CTest переменная: CTEST_UPDATE_COMMAND
  • CTest переменная модуля: <VCS>COMMAND когда UPDATE_TYPE является <vcs>, иначе UPDATE_COMMAND
UpdateOptions

Опции командной строки для UpdateCommand.

  • Скрипт CTest переменная: CTEST_UPDATE_OPTIONS
  • CTest переменная модуля: <VCS>_UPDATE_OPTIONS когда UPDATE_TYPE является <vcs>, иначе UPDATE_OPTIONS
UpdateType

Укажите систему контроля версий, управляющую деревом исходного кода, если ее нельзя автоматически определить. Значение может быть bzr, cvs, git, hg, p4, или svn.

  • Скрипт CTest переменная: ничто, определено из дерева исходного кода
  • CTest переменная модуля: UPDATE_TYPE если установлено, иначе CTEST_UPDATE_TYPE
UpdateVersionOnly

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

  • Скрипт CTest переменная: CTEST_UPDATE_VERSION_ONLY

Дополнительные параметры конфигурации включают:

NightlyStartTime

В режиме панели Nightly укажите «время начала ночной сборки». В централизованных системах контроля версий (cvs и svn) шаг Update проверяет версию программного обеспечения на момент этого времени, чтобы несколько клиентов выбирали общую версию для тестирования. В распределенных системах контроля версий это не определено, поэтому настройка игнорируется.

  • Скрипт CTest переменная: CTEST_NIGHTLY_START_TIME
  • CTest переменная модуля: NIGHTLY_START_TIME если установлено, иначе CTEST_NIGHTLY_START_TIME

Шаг CTest Configure

В скрипте CTest команда ctest_configure() выполняет этот шаг. Аргументы команды могут указывать некоторые настройки шага.

Настройки конфигурации включают:

ConfigureCommand

Командная строка для запуска процесса конфигурации программного обеспечения. Она будет выполнена в расположении, указанном настройкой BuildDirectory.

  • Скрипт CTest переменная: CTEST_CONFIGURE_COMMAND
  • CTest переменная модуля: CMAKE_COMMAND после PROJECT_SOURCE_DIR

Шаг CTest Build

В скрипте CTest команда ctest_build() выполняет этот шаг. Аргументы команды могут указывать некоторые настройки шага.

Настройки конфигурации включают:

DefaultCTestConfigurationType

Когда система сборки позволяет выбрать конфигурацию во время сборки (например, Debug, Release), это указывает на стандартную конфигурацию для сборки, когда опция -C не задана для команды ctest. Значение будет подставлено в значение MakeCommand, чтобы заменить строку ${CTEST_CONFIGURATION_TYPE}, если она встречается.

  • Скрипт CTest переменная: CTEST_CONFIGURATION_TYPE
  • CTest переменная модуля: DEFAULT_CTEST_CONFIGURATION_TYPE, инициализирована переменной среды CMAKE_CONFIG_TYPE
MakeCommand

Командная строка для запуска процесса сборки программного обеспечения. Она будет выполнена в расположении, указанном настройкой BuildDirectory.

  • Скрипт CTest переменная: CTEST_BUILD_COMMAND
  • CTest переменная модуля: MAKECOMMAND, инициализирована командой build_command()
UseLaunchers

Для деревьев сборки, сгенерированных CMake с помощью одного из генераторов Makefile или генератора Ninja, укажите, включена ли функция CTEST_USE_LAUNCHERS модулем CTestUseLaunchers (также включён модулем CTest). При включении сгенерированная система сборки обернёт каждый вызов компилятора, компоновщика или пользовательской командной строки «запускателем», который взаимодействует с CTest через переменные среды и файлы, чтобы сообщать о подробных предупреждениях и ошибках сборки. В противном случае CTest должен «извлекать» журнал вывода сборки для диагностики.

  • Скрипт CTest переменная: CTEST_USE_LAUNCHERS
  • CTest переменная модуля: CTEST_USE_LAUNCHERS

Шаг CTest Test

В скрипте CTest команда ctest_test() выполняет этот шаг. Аргументы команды могут указывать некоторые настройки шага.

Настройки конфигурации включают:

TestLoad

Во время параллельного выполнения тестов (например, с -j) старайтесь не запускать тесты, когда они могут привести к превышению заданного порога нагрузки ЦП.

  • Скрипт CTest переменная: CTEST_TEST_LOAD
  • CTest переменная модуля: CTEST_TEST_LOAD
TimeOut

Стандартный таймаут для каждого теста, если не указан свойством теста TIMEOUT.

  • Скрипт CTest переменная: CTEST_TEST_TIMEOUT
  • CTest переменная модуля: DART_TESTING_TIMEOUT

Шаг CTest Coverage

В скрипте CTest команда ctest_coverage() выполняет этот шаг. Аргументы команды могут указывать некоторые настройки шага.

Настройки конфигурации включают:

CoverageCommand

Инструмент командной строки для выполнения анализа покрытия программного обеспечения. Он будет выполнен в указанном месте параметром BuildDirectory.

  • Скрипт CTest переменная: CTEST_COVERAGE_COMMAND
  • CTest модульная переменная: COVERAGE_COMMAND
CoverageExtraFlags

Укажите параметры командной строки для инструмента CoverageCommand.

  • Скрипт CTest переменная: CTEST_COVERAGE_EXTRA_FLAGS
  • CTest модульная переменная: COVERAGE_EXTRA_FLAGS

Шаг CTest MemCheck

В скрипте CTest команда ctest_memcheck() выполняет этот шаг. Аргументы команды могут задавать некоторые параметры шага.

Настройки конфигурации включают:

MemoryCheckCommand

Инструмент командной строки для выполнения динамического анализа. Команды тестирования будут запускаться через этот инструмент.

  • Скрипт CTest переменная: CTEST_MEMORYCHECK_COMMAND
  • CTest модульная переменная: MEMORYCHECK_COMMAND
MemoryCheckCommandOptions

Укажите параметры командной строки для инструмента MemoryCheckCommand. Они будут размещены перед командой выполнения теста.

  • Скрипт CTest переменная: CTEST_MEMORYCHECK_COMMAND_OPTIONS
  • CTest модульная переменная: MEMORYCHECK_COMMAND_OPTIONS
MemoryCheckType

Укажите тип проверки памяти для выполнения.

  • Скрипт CTest переменная: CTEST_MEMORYCHECK_TYPE
  • CTest модульная переменная: MEMORYCHECK_TYPE
MemoryCheckSanitizerOptions

Укажите параметры для инструментов проверки, когда сборка выполняется с поддержкой проверки.

  • Скрипт CTest переменная: CTEST_MEMORYCHECK_SANITIZER_OPTIONS
  • CTest модульная переменная: MEMORYCHECK_SANITIZER_OPTIONS
MemoryCheckSuppressionFile

Укажите файл, содержащий правила подавления для инструмента MemoryCheckCommand. Он будет передан с соответствующими параметрами для инструмента.

  • Скрипт CTest переменная: CTEST_MEMORYCHECK_SUPPRESSIONS_FILE
  • CTest модульная переменная: MEMORYCHECK_SUPPRESSIONS_FILE

Дополнительные параметры конфигурации включают:

BoundsCheckerCommand

Укажите MemoryCheckCommand, который совместим с командной строкой Bounds Checker.

  • Скрипт CTest переменная: none
  • CTest модульная переменная: none
PurifyCommand

Укажите MemoryCheckCommand, который совместим с командной строкой Purify.

  • Скрипт CTest переменная: none
  • CTest модульная переменная: PURIFYCOMMAND
ValgrindCommand

Укажите MemoryCheckCommand, который совместим с командной строкой Valgrind.

  • Скрипт CTest переменная: none
  • CTest модульная переменная: VALGRIND_COMMAND
ValgrindCommandOptions

Укажите параметры командной строки для инструмента ValgrindCommand. Они будут помещены перед командой выполнения теста.

  • Скрипт CTest переменная: none
  • CTest модульная переменная: VALGRIND_COMMAND_OPTIONS

Шаг CTest Submit

В скрипте CTest команда ctest_submit() выполняет этот шаг. Аргументы команды могут задавать некоторые параметры шага.

Настройки конфигурации включают:

BuildName

Опишите платформу клиента панели мониторинга с помощью короткой строки. (Операционная система, компилятор и т. д.)

  • Сценарий CTest переменная: CTEST_BUILD_NAME
  • CTest модульная переменная: BUILDNAME
CDashVersion

Укажите версию CDash на сервере.

  • Сценарий CTest переменная: нет, обнаружено с сервера
  • CTest модульная переменная: CTEST_CDASH_VERSION
CTestSubmitRetryCount

Укажите количество попыток повторной отправки при сбоях сети.

  • Сценарий CTest переменная: нет, используйте параметр ctest_submit() RETRY_COUNT.
  • CTest модульная переменная: CTEST_SUBMIT_RETRY_COUNT
CTestSubmitRetryDelay

Укажите задержку перед повторной отправкой при сбоях сети.

  • Сценарий CTest переменная: нет, используйте параметр ctest_submit() RETRY_DELAY.
  • CTest модульная переменная: CTEST_SUBMIT_RETRY_DELAY
CurlOptions

Укажите список параметров, разделенных точкой с запятой, для управления библиотекой Curl, которую CTest использует для подключения к серверу. Возможные параметры — CURLOPT_SSL_VERIFYPEER_OFF и CURLOPT_SSL_VERIFYHOST_OFF.

  • Сценарий CTest переменная: CTEST_CURL_OPTIONS
  • CTest модульная переменная: CTEST_CURL_OPTIONS
DropLocation

Путь на сервере панели мониторинга для отправки отчета.

  • Сценарий CTest переменная: CTEST_DROP_LOCATION
  • CTest модульная переменная: DROP_LOCATION при установке, в противном случае CTEST_DROP_LOCATION
DropMethod

Укажите метод отправки результатов на сервер панели мониторинга. Значение может быть cp, ftp, http, https, scp, или xmlrpc (если CMake был скомпилирован с поддержкой этого).

  • Сценарий CTest переменная: CTEST_DROP_METHOD
  • CTest модульная переменная: DROP_METHOD при установке, в противном случае CTEST_DROP_METHOD
DropSite

Имя сервера панели мониторинга (для ftp, http, и https, scp, и xmlrpc).

  • Сценарий CTest переменная: CTEST_DROP_SITE
  • CTest модульная переменная: DROP_SITE при установке, в противном случае CTEST_DROP_SITE
DropSitePassword

Пароль пользователя сервера панели мониторинга (если есть) (для ftp, http, и https).

  • Сценарий CTest переменная: CTEST_DROP_SITE_PASSWORD
  • CTest модульная переменная: DROP_SITE_PASSWORD при установке, в противном случае CTEST_DROP_SITE_PASWORD
DropSiteUser

Имя пользователя для входа на сервер панели мониторинга (если есть) (для ftp, http, и https).

  • Сценарий CTest переменная: CTEST_DROP_SITE_USER
  • CTest модульная переменная: DROP_SITE_USER при установке, в противном случае CTEST_DROP_SITE_USER
IsCDash

Укажите, является ли сервер панели мониторинга CDash или более старой реализацией сервера панели мониторинга, требующей TriggerSite.

  • Сценарий CTest переменная: CTEST_DROP_SITE_CDASH
  • CTest модульная переменная: CTEST_DROP_SITE_CDASH
ScpCommand

scp командная утилита для использования при DropMethod равно scp.

  • Сценарий CTest переменная: CTEST_SCP_COMMAND
  • CTest модульная переменная: SCPCOMMAND
Site

Опишите сайт-хоста клиента панели мониторинга кратко. (Имя хоста, домен и т. д.)

  • Сценарий CTest переменная: CTEST_SITE
  • CTest модульная переменная: SITE, инициализирована командой site_name()
TriggerSite

Застарелый параметр для поддержки более старых реализаций сервера панели мониторинга. Не используется, когда IsCDash имеет значение true.

  • Сценарий CTest переменная: CTEST_TRIGGER_SITE
  • CTest модульная переменная: TRIGGER_SITE при установке, в противном случае CTEST_TRIGGER_SITE

См. также

Для получения помощи по использованию CMake доступны следующие ресурсы:

Главная страница

https://cmake.org

Основная стартовая точка для изучения CMake.

Часто задаваемые вопросы

https://cmake.org/Wiki/CMake_FAQ

На Wiki предоставлены ответы на часто задаваемые вопросы.

Онлайн-документация

https://cmake.org/documentation

Ссылки на доступную документацию можно найти на этой веб-странице.

Список рассылки

https://cmake.org/mailing-lists

Для получения помощи и обсуждения использования CMake доступен список рассылки по адресу cmake@cmake.org. Список рассылки предназначен только для участников, но на веб-странице CMake можно подписаться. Сначала ознакомьтесь с полной документацией по адресу https://cmake.org, прежде чем задавать вопросы в списке рассылки.

© 2000–2019 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.7/manual/ctest.1.html

Spec-Zone.ru

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