automake - Поддержка комплектов тестирования

Go to the first, previous, next, last section, table of contents.


Поддержка комплектов тестирования

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

Если определена переменная TESTS, то ее значение является списком программ, которые надо запустить для проведения тестирования. Программы могут быть либо унаследованными объектами, либо исходными объектами; сгенерированное правило будет искать их и в srcdir, и в `.'. Программы, которые нуждаются в файлах данных должны искать их в каталоге srcdir (который указан в одноименных переменных среды и make), так что они будут работать при построении в отдельном каталоге (see section `Каталоги сборки' in Руководство Autoconf), и в частности для цели distcheck (see section Что войдет в дистрибутив).

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

Переменная TESTS_ENVIRONMENT может быть использована для установки переменных среды для запускаемых тестов; при выполнении этого правила переменная среды srcdir устанавливается. Если все ваши тестовые программы являются скриптами, то вы также можете установить переменную TESTS_ENVIRONMENT для вызова командного процессора (например, `$(SHELL) -x'); это свойство может быть полезно при отладке тестов.

Если в переменной AUTOMAKE_OPTIONS указано `dejagnu', то предполагается использования комплекта тестов на базе dejagnu. Значение переменной DEJATOOL передается как аргумент ключа --tool программы runtest; по умолчанию это имя пакета.

Переменная RUNTESTDEFAULTFLAGS содержит флаги для ключей --tool и --srcdir, которые по умолчанию передаются dejagnu; в случае необходимости это поведение может быть изменено.

Переменные EXPECT, RUNTEST и RUNTESTFLAGS могут быть переопределены для подстановки специфичных для проекта значений. Например, если вам необходимо сделать это для тестирования toolchain компилятора, поскольку значения по умолчанию не должны содержать имена машины и цели.

В других случаях тестирование производится через цель `make check'.


Go to the first, previous, next, last section, table of contents.