Тестирование

testinfra: проверяем состояние серверов на pytest

Тесты описывают, какими должны быть пакеты, службы и порты после настройки.

Команды и конфиги

# test_web.py
def test_nginx(host):
    assert host.package("nginx").is_installed
    assert host.service("nginx").is_running
    assert host.socket("tcp://0.0.0.0:80").is_listening

pytest --hosts=ssh://root@server test_web.py

На что обратить внимание

Прогоняйте тесты после каждого изменения конфигурации.

Читайте также

Тестирование

bats: автотесты для shell-скриптов

Тестируйте коды возврата и вывод скриптов так же, как обычный код.

Тестирование

stress-ng: нагрузочное тестирование системы

Утилита нагружает процессор, память и диск и показывает пределы системы.

Тестирование

fio: измеряем производительность диска

fio воспроизводит нагрузку приложений: случайное чтение и запись, разные блоки и очереди.