Alterator/module/testing: различия между версиями

Материал из ALT Linux Wiki
Строка 1: Строка 1:
===Тестирование модулей===
===Тестирование модулей===
Тестирование бакендов — отличается тем, что во время выполнения теста зачастую требуется менять конфигурацию отдельных системных компонент, поэтому всё тестирование модулей alterator происходит в виртуальной среде. Стандартное правило check-module:
Тестирование бакендов — отличается тем, что во время выполнения теста зачастую требуется менять конфигурацию отдельных системных компонент, поэтому всё тестирование модулей alterator происходит в виртуальной среде. Стандартное правило '''check-module''':
# создаёт виртуальную среду, устанавливает необходимые пакеты
# создаёт виртуальную среду, устанавливает необходимые пакеты
# копирует в эту среду содержимое вашего проекта
# копирует в эту среду содержимое вашего проекта

Версия от 13:25, 1 августа 2008

Тестирование модулей

Тестирование бакендов — отличается тем, что во время выполнения теста зачастую требуется менять конфигурацию отдельных системных компонент, поэтому всё тестирование модулей alterator происходит в виртуальной среде. Стандартное правило check-module:

  1. создаёт виртуальную среду, устанавливает необходимые пакеты
  2. копирует в эту среду содержимое вашего проекта
  3. запускает некий, указанный вами, скрипт, который и производит тестирование.

Поведение правила контролируется следующими переменными make:

переменная значение по умолчанию описание
TEST_CONSTRUCTOR /usr/share/alterator/build/unittest скрипт - конструктор виртуальной среды
TEST_ENVIRONMENT hasher вид виртуальной среды, на данный момент поддерживается только hasher
TEST_REQUIRES список пакетов устанавливаемых в виртуальную среду в дополнение к стандартным
TEST_PROGRAM ./runtests программа запускающая unit-тесты
HASHER_WORKDIR $TMPDIR рабочий каталог hasher

Как видно, вы можете использовать ту систему юнит-тестов, которая вам удобна. Для бакендов на shell рекомендуется использовать библиотеку shell-unittest из libshell.

Пример Makefile из пакета alterator-control:

NAME=control

TEST_REQUIRES=control

all:
clean: clean-po
install: install-module
check: check-module

include /usr/share/alterator/build/module.mak