Next: Запуск Guix перед его установкой, Previous: Сборка из Git, Up: Содействие [Contents][Index]
После успешного завершения configure
и make
хорошо бы
выполнить набор тестов. Это поможет выявить проблемы установки или в
окружении, как и баги самого Guix (на самом деле, отчёты об ошибках тестов
помогают улучшить ПО). Чтобы запустить тесты, напечатайте:
make check
Тесты можно выполнять параллельно при включении опции -j
в
GNU make, так быстрее. Первый запуск может длиться несколько минут на
топовой машине, последующие запуски будут быстрее, так как склад, который
создаётся для тестов, уже закеширует различные вещи.
Также можно запустить отдельные наборы тестов, используя переменную
TESTS
, как в примере:
make check TESTS="tests/store.scm tests/cpio.scm"
По умолчанию результаты тестов выводятся в файл. Чтобы просмотреть
результаты каждого отдельного теста, нужно задать переменную makifile
SCM_LOG_DRIVER_FLAGS
, как в примере:
make check TESTS="tests/base64.scm" SCM_LOG_DRIVER_FLAGS="--brief=no"
Лежащий в основе кастомный SRFI 64 Automake тестовый драйвер, используемый для ’проверки’ набора тестов (расположенный в build-aux/test-driver.scm) также позволяет выбрать, какие тестовые случаи запускать на более высоком уровне, при помощи опций --select и --exclude. Вот пример для запуска всех тестовых случаев из файла tests/packages.scm, чьи имена начинаются с “transaction-upgrade-entry”:
export SCM_LOG_DRIVER_FLAGS="--select=^transaction-upgrade-entry" make check TESTS="tests/packages.scm"
Желающие проверить результаты неудачных тестов прямо из командной строки
могут добавить --errors-only=yes к makefile
переменнойSCM_LOG_DRIVER_FLAGS
и задать Automake makefile переменную
VERBOSE
, как в:
make check TESTS="tests/base64.scm" SCM_LOG_DRIVER_FLAGS="--brief=no"
Опция --show-duration=yes может быть использована чтобы отобразить продолжительность отдельных тестовых случаев, когда использована вместе с --brief=no:
make check TESTS="tests/base64.scm" SCM_LOG_DRIVER_FLAGS="--brief=no"
See Parallel Test Harness in GNU Automake для получения дополнительной информации о Automake Parallel Test Harness.
В случае ошибки, пожалуйста, отправьте сообщение на bug-guix@gnu.org и присоедините файл test-suite.log. Пожалуйста, обозначьте в сообщении используемую версию Guix, а также номера версий зависимостей (see Требования).
Guix также идёт с набором тестов для всей системы, который проверяет нстранцию системы Guix. Их можно запустить только в системах, где Guix уже установлен, так:
make check-system
или, опять же, задав TESTS
, чтобы выбрать список тестов для запуска:
make check-system TESTS="basic mcron"
Тесты системы определены в модулях (gnu tests …)
. При работе
они запускают операционную систему под легковесным инструментарием в
виртуальной машине. Они могут выполнять тяжёлые вычисления или довольно
простые в зависимости от наличия подстановок их зависимостей
(see Подстановки). Некоторые из них требуют много места для работы с
образами виртуальной машины.
Если вы столкнулись с ошибкй, похожей на эту:
Compiling Scheme modules... ice-9/eval.scm:142:16: In procedure compile-top-call: error: all-system-tests: unbound variable hint: Did you forget `(use-modules (gnu tests))'?
there may be inconsistencies in the work tree from previous builds. To
resolve this, try running make clean-go
followed by
make
.
Конечно, в случае неудачных тестов, пожалуйста, направьте детали на bug-guix@gnu.org.
Next: Запуск Guix перед его установкой, Previous: Сборка из Git, Up: Содействие [Contents][Index]