Spec-Zone.ru › CMake 3.8

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 и выполнить тестовый запуск панели мониторинга. Все тесты имеют вид <Режим><Тест>, где Режим может быть Экспериментальный, Ежедневный и Непрерывный, а Тест может быть Запуск, Обновление, Настройка, Сборка, Тестирование, Покрытие и Отправка.

-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>

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

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

-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 это означает, что в неинтерактивном режиме все всплывающие окна отладки системы заблокированы. В режиме панели мониторинга (Экспериментальный, Ежедневный, Непрерывный) по умолчанию используется неинтерактивный режим. При простом запуске тестов не для панели мониторинга по умолчанию разрешены всплывающие окна и интерактивная отладка.

--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 Настройка

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

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

ConfigureCommand

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

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

Шаг CTest Сборка

В скрипте 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

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

  • Скрипт 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 Тестирование

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

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

TestLoad

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

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

Значение по умолчанию для таймаута каждого теста, если не указано свойством теста TIMEOUT.

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

Шаг CTest Покрытие

В Сценарии 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.8/manual/ctest.1.html

Spec-Zone.ru

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