From f7500283d99b74714b8cc9e2fd01321ce8af15da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=93=D1=80=D0=B8=D0=B3=D0=BE=D1=80=D0=B8=D0=B9=20=D0=A1?= =?UTF-8?q?=D0=B0=D1=84=D1=80=D0=BE=D0=BD=D0=BE=D0=B2?= Date: Wed, 20 May 2026 18:37:29 +0000 Subject: [PATCH] Update README.md --- README.md | 42 +++++++++++++++++++++++++----------------- 1 file changed, 25 insertions(+), 17 deletions(-) diff --git a/README.md b/README.md index 50e8c23..926dcfd 100644 --- a/README.md +++ b/README.md @@ -173,31 +173,39 @@ $ ./futriis ### Тестирование -На данный момент для субд реализовано пять тестов (регрессионный, smoke-тест, функциональный, интеграционный, нагрузочный) на языке lua, покрывающий функционал acl, индексов, constraint'ов, RestFull HTTP API, ACL +Разработанный набор из пяти тестов (регрессионный, smoke-тест, функциональный, интеграционный и нагрузочный) на языке Lua обеспечивает комплексную проверку всех ключевых компонентов СУБД: CRUD-операций, индексов, транзакций, ограничений целостности, ACL, триггеров, MVCC-версионирования, а также взаимодействия API с хранилищем и кластерной координации. Регрессионный тест гарантирует, что изменения кода не нарушили существующую функциональность, smoke-тест выполняет быструю проверку доступности и базовой работоспособности системы. Функциональный и интеграционный тесты проверяют корректность реализации бизнес-требований и взаимодействие между компонентами, а нагрузочный тест оценивает производительность (латентность, пропускную способность) под различными сценариями использования. + +Команды для запуска тестов приведены ниже: > [!IMPORTANT] > 1. Перед запуском тестов убедитесь, что СУБД запущена и HTTP API доступен на порту 8080 > 2. Load test может занять несколько минут при больших объёмах данных -> 3. Для параллельного тестирования в нагрузочном тесте рекомендуется использовать lua-lanes или запускать несколько процессов -> 4. Все тесты используют аутентификацию и проверяют как позитивные, так и негативные сценарии + ```bash -# Установка LuaSocket и JSON библиотек -luarocks install luasocket -luarocks install lua-cjson +# Установка зависимостей для Lua-тестирования +sudo apt install lua5.3 lua-socket -# Запуск отдельных тестов -lua regression_test.lua -lua smoke_test.lua -lua functional_test.lua -lua integration_test.lua -lua load_test.lua +# Запуск регрессионного теста +lua test_regression.lua -# Или все тесты последовательно -for test in regression smoke functional integration load; do - echo "Running ${test}_test.lua..." - lua ${test}_test.lua - echo "---" +# Запуск smoke-теста +lua test_smoke.lua + +# Запуск функционального теста +lua test_functional.lua + +# Запуск интеграционного теста +lua test_integration.lua + +# Запуск нагрузочного теста +lua test_performance.lua + +# Запуск всех тестов последовательно +for test in test_regression.lua test_smoke.lua test_functional.lua test_integration.lua test_performance.lua; do + echo "=== Running $test ===" + lua "$test" + echo "" done ```

(К началу)