docs: обновил README tests-deploy с полной инструкцией

This commit is contained in:
Naeel
2026-04-13 09:30:44 +03:00
parent dbfdcbe24d
commit 3cf81a1e01
+67 -37
View File
@@ -1,50 +1,80 @@
# 🧪 Тесты для shared-SQS # Tests Deploy
Папка для запуска функциональных и стресс-тестов shared-SQS сервиса. Скрипты для verification и testing development deployment shared-SQS.
## Быстрый старт ## Быстрый старт
\`\`\`bash ### 1. Быстрые тесты (7 операций SQS, ~30 сек)
bash run.sh
\`\`\`
Готово! Скрипт: ```bash
1. 📖 Читает параметры из \`deploy/values.yaml\`
2. 🔍 Проверяет доступность сервиса
3. 🚀 Запускает quick_test.sh (31 проверка, ~1 минута)
## 🎯 Как использовать?
### Вариант 1: Быстро (из значений values.yaml)
\`\`\`bash
cd tests-deploy cd tests-deploy
bash run.sh bash run.sh
\`\`\` ```
### Вариант 2: Переопределить параметры **Что тестируется:**
\`\`\`bash - CreateQueue, DeleteQueue
cp .env.local.example .env.local - ListQueues, GetQueueUrl
# Отредактируй .env.local с твоими параметрами - SendMessage, ReceiveMessage
bash run.sh - DeleteMessage
\`\`\`
### Вариант 3: Через env-переменные (для CI/CD) ### 2. Полный набор тестов (18 операций, batch operations, visibility, tags)
\`\`\`bash
BASE_URL=https://my-sqs.example.com ADMIN_TOKEN=my-token bash run.sh
\`\`\`
## 📊 Что проверяется? ```bash
cd tests-deploy
bash stress.sh
```
✅ Health check **Дополнительно тестируется:**
✅ Admin API (CRUD тенантов) - GetQueueAttributes, SetQueueAttributes
✅ SQS операции (CreateQueue, SendMessage, etc) - TagQueue, ListQueueTags, UntagQueue
✅ Batch операции - ChangeMessageVisibility, ChangeMessageVisibilityBatch
✅ Tags API - SendMessageBatch, ReceiveMessage batch
✅ UI API с JWT - 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.
После тестов очереди автоматически удаляются.