Spec-Zone.ru › CMake 3.9

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 НЕ запускать тесты, чьи метки соответствуют заданному регулярному выражению.

-FA <regex>, --fixture-exclude-any <regex>

Исключить фикстуры, соответствующие <regex>, из автоматического добавления любых тестов в набор тестов.

Если тест в наборе тестов для выполнения требует определённой фикстуры, тесты настройки и очистки этой фикстуры обычно добавляются в набор тестов автоматически. Этот параметр предотвращает добавление тестов настройки или очистки для фикстур, соответствующих <regex>. Обратите внимание, что все остальные функции фикстуры сохраняются, включая зависимости тестов и пропуск тестов, имеющих тесты настройки фикстуры, которые завершаются неудачно.

-FS <regex>, --fixture-exclude-setup <regex>
Аналогично -FA, за исключением того, что исключаются только соответствующие тесты настройки.
-FC <regex>, --fixture-exclude-cleanup <regex>
Аналогично -FA, за исключением того, что исключаются только соответствующие тесты очистки.
-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>]

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

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

--help-full [<f>]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

--help-commands [<f>]

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

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

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

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

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

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

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

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

--help-modules [<f>]

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

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

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

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

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

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

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

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

--help-policies [<f>]

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

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

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

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

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

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

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

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

--help-properties [<f>]

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

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

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

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

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

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

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

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

--help-variables [<f>]

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

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

Клиент панели мониторинга

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

Шаги клиента панели мониторинга

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

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

Режимы клиента панели управления

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 Start

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

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

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

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

BZRCommand

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

  • Сценарий CTest переменная: CTEST_BZR_COMMAND
  • CTest модульная переменная: none
BZRUpdateOptions

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

  • Сценарий CTest переменная: CTEST_BZR_UPDATE_OPTIONS
  • CTest модульная переменная: none
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 модульная переменная: none
HGUpdateOptions

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

  • Сценарий CTest переменная: CTEST_HG_UPDATE_OPTIONS
  • CTest модульная переменная: none
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 переменная: none
  • 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

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

  • Скрипт 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

Командная строка для запуска процесса сборки программного обеспечения. Она будет выполнена в расположении, указанном настройкой 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 Тест

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

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

См. также

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

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

https://cmake.org

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

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

https://cmake.org/Wiki/CMake_FAQ

Вики содержит ответы на часто задаваемые вопросы.

Документация онлайн

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.9/manual/ctest.1.html

Spec-Zone.ru

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