diff --git a/tests-deploy/README.md b/tests-deploy/README.md index c3eecee..afcd210 100644 --- a/tests-deploy/README.md +++ b/tests-deploy/README.md @@ -1,50 +1,80 @@ -# 🧪 Тесты для shared-SQS +# Tests Deploy -Папка для запуска функциональных и стресс-тестов shared-SQS сервиса. +Скрипты для verification и testing development deployment shared-SQS. -## ⚡ Быстрый старт +## Быстрый старт -\`\`\`bash -bash run.sh -\`\`\` +### 1. Быстрые тесты (7 операций SQS, ~30 сек) -Готово! Скрипт: -1. 📖 Читает параметры из \`deploy/values.yaml\` -2. 🔍 Проверяет доступность сервиса -3. 🚀 Запускает quick_test.sh (31 проверка, ~1 минута) - -## 🎯 Как использовать? - -### Вариант 1: Быстро (из значений values.yaml) -\`\`\`bash +```bash cd tests-deploy bash run.sh -\`\`\` +``` -### Вариант 2: Переопределить параметры -\`\`\`bash -cp .env.local.example .env.local -# Отредактируй .env.local с твоими параметрами -bash run.sh -\`\`\` +**Что тестируется:** +- CreateQueue, DeleteQueue +- ListQueues, GetQueueUrl +- SendMessage, ReceiveMessage +- DeleteMessage -### Вариант 3: Через env-переменные (для CI/CD) -\`\`\`bash -BASE_URL=https://my-sqs.example.com ADMIN_TOKEN=my-token bash run.sh -\`\`\` +### 2. Полный набор тестов (18 операций, batch operations, visibility, tags) -## 📊 Что проверяется? +```bash +cd tests-deploy +bash stress.sh +``` -✅ Health check -✅ Admin API (CRUD тенантов) -✅ SQS операции (CreateQueue, SendMessage, etc) -✅ Batch операции -✅ Tags API -✅ UI API с JWT +**Дополнительно тестируется:** +- GetQueueAttributes, SetQueueAttributes +- TagQueue, ListQueueTags, UntagQueue +- ChangeMessageVisibility, ChangeMessageVisibilityBatch +- SendMessageBatch, ReceiveMessage batch +- DeleteMessageBatch +- PurgeQueue -## 🚨 Если не работает +## Как это работает -1. Проверь, что values.yaml содержит правильный домен и токен -2. Убедись, что сервис deployed и готов -3. Проверь DNS: \`nslookup qu.kube5s.ru\` +### Автоматическое извлечение параметров +`run.sh` и `stress.sh` автоматически читают параметры из `deploy/values.yaml`: +- `ingress.host` → BASE_URL для API +- `admin.token` → ADMIN_TOKEN для управления +- Используются demo credentials для SQS операций (SSAK-demo-shared-sqs / demo-secret-key-shared-sqs-ngcloud-2026) + +### Проверка доступности + +Перед запуском тестов скрипты проверяют доступность сервиса через `curl /health`. + +### Override параметров + +Если нужно использовать свои значения вместо values.yaml, создайте `.env.local`: + +```bash +# .env.local +export BASE_URL="https://your-domain.com" +export AWS_ACCESS_KEY_ID="your-access-key" +export AWS_SECRET_ACCESS_KEY="your-secret-key" +``` + +Он будет автоматически загружен при первом запуске. + +## Файлы + +- `run.sh` — запуск быстрых тестов +- `stress.sh` — запуск полного набора тестов +- `quick.sh` — alias для run.sh (для удобства) +- `README.md` — эта инструкция +- `.env.local.example` — пример override-файла конфигурации + +## Требования + +- bash 4.0+ +- curl +- aws-cli (для SQS операций) +- Развёрнутый shared-SQS с ingress доступом + +## Результаты + +**Успехом считается:** PASS=7 для quick tests или PASS=18 для stress tests, FAIL=0. + +После тестов очереди автоматически удаляются.