docs: update Quick Start and Test Execution sections in README.md
This commit is contained in:
102
README.md
102
README.md
@ -70,94 +70,108 @@ python -m venv venv
|
||||
.\venv\Scripts\playwright.exe install chromium
|
||||
```
|
||||
|
||||
### 3. Настроить учётные данные
|
||||
### 3. Настроить конфигурацию и учётные данные
|
||||
|
||||
```powershell
|
||||
Copy-Item .env.example .env
|
||||
# Открыть .env и заполнить логины/пароли
|
||||
# Открыть .env и указать BASE_URL, логины и пароли ролей
|
||||
```
|
||||
|
||||
### 4. (Опционально) Настройка ГОСТ-браузера
|
||||
|
||||
Если целевой портал защищён ГОСТ TLS (ГОСТ Р 34.12-2015, 34.10-2012) или вы хотите тестировать ГОСТ-контур:
|
||||
1. Скачайте архив **[Chromium-GOST](https://github.com/deemru/chromium-gost/releases)** (например, `chromium-gost-...-windows-amd64.zip`).
|
||||
2. Распакуйте его в стандартный каталог `%LOCALAPPDATA%\Chromium-Gost` (или `C:\Program Files\Chromium-Gost`). Механизм тестов обнаружит его **автоматически**.
|
||||
3. *Альтернатива:* если браузер распакован в произвольную папку, укажите путь в `.env`:
|
||||
```ini
|
||||
CHROMIUM_GOST_PATH=C:\MyPrograms\chromium-gost\chrome.exe
|
||||
```
|
||||
4. Убедитесь, что на компьютере установлен криптопровайдер с ГОСТ-алгоритмами (КриптоПро CSP, Security Code CSP / Континент-АП).
|
||||
|
||||
---
|
||||
|
||||
## Запуск тестов
|
||||
|
||||
> Все команды выполняются из корня проекта (`e2e_Pets/`).
|
||||
> HTML-отчёт автоматически создаётся в `html-report/report.html`.
|
||||
> Все команды выполняются из корня проекта (`e2e_Pets/`).
|
||||
> HTML-отчёт со статусом, типом TLS и запущенным браузером автоматически формируется в `html-report/report.html`.
|
||||
|
||||
---
|
||||
|
||||
### Запустить ВСЕ тесты
|
||||
### Автоматический запуск (рекомендуемый)
|
||||
|
||||
По умолчанию включён режим `--tls-mode=auto`. Система перед стартом проверяет сокет целевого `BASE_URL`:
|
||||
- Если сайт доступен по **стандартному TLS** → автоматически запускается встроенный **Chromium Playwright**.
|
||||
- Если сайт защищён **ГОСТ TLS** → автоматически запускается **Chromium-GOST**.
|
||||
|
||||
```powershell
|
||||
# Запуск всех тестов в авто-режиме
|
||||
.\venv\Scripts\pytest.exe
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Запустить тесты конкретного ЛК (роли)
|
||||
### Принудительный выбор режима TLS
|
||||
|
||||
Если вы хотите явно зафиксировать браузер в обход автоопределения:
|
||||
|
||||
```powershell
|
||||
# ЛК Управление ветеринарии
|
||||
# Принудительно запустить через Chromium-GOST
|
||||
.\venv\Scripts\pytest.exe --tls-mode=gost
|
||||
|
||||
# Принудительно запустить через стандартный Chromium Playwright
|
||||
.\venv\Scripts\pytest.exe --tls-mode=standard
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Запуск тестов конкретного ЛК (роли)
|
||||
|
||||
```powershell
|
||||
# ЛК Управление ветеринарии (все бизнес-процессы)
|
||||
.\venv\Scripts\pytest.exe tests/01_vetdept/
|
||||
|
||||
# ЛК Ветеринарная станция
|
||||
# ЛК Ветеринарная станция (все бизнес-процессы)
|
||||
.\venv\Scripts\pytest.exe tests/02_vetstation/
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Запустить конкретный бизнес-процесс
|
||||
### Запуск конкретного бизнес-процесса или шага
|
||||
|
||||
```powershell
|
||||
# BP01 навигации в ЛК Управление ветеринарии
|
||||
# Запуск BP01 в ЛК Управление ветеринарии
|
||||
.\venv\Scripts\pytest.exe tests/01_vetdept/BP01_navigation/
|
||||
|
||||
# BP01 дашборда в ЛК Ветеринарная станция
|
||||
.\venv\Scripts\pytest.exe tests/02_vetstation/BP01_dashboard/
|
||||
# Запуск только шага 1 (Dashboard)
|
||||
.\venv\Scripts\pytest.exe tests/01_vetdept/BP01_navigation/ -k "s01"
|
||||
|
||||
# Запуск шагов 1 и 2
|
||||
.\venv\Scripts\pytest.exe tests/01_vetdept/BP01_navigation/ -k "s01 or s02"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Запустить конкретный шаг
|
||||
|
||||
```powershell
|
||||
# Только шаг 3 из BP01 ветстанции
|
||||
.\venv\Scripts\pytest.exe tests/02_vetstation/BP01_dashboard/ -k "s03"
|
||||
|
||||
# Только шаги 1 и 2
|
||||
.\venv\Scripts\pytest.exe tests/02_vetstation/BP01_dashboard/ -k "s01 or s02"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Полезные флаги
|
||||
### Полезные флаги запуска
|
||||
|
||||
| Флаг | Описание |
|
||||
|---|---|
|
||||
| `-v` | Подробный вывод с именами шагов |
|
||||
| `--headed` | Показывать браузер (по умолчанию включён в `pytest.ini`) |
|
||||
| `--headless` | Запустить без браузера (быстрее) |
|
||||
| `--slowmo 500` | Замедление действий на 500мс (для отладки) |
|
||||
| `-k "BP01"` | Запустить только тесты содержащие "BP01" в имени |
|
||||
| `--co -q` | Только показать список тестов без запуска |
|
||||
| `--tls-mode=auto` | Режим TLS: `auto` (по умолчанию — автоопределение), `gost` или `standard` |
|
||||
| `--ignore-https-errors` | Игнорировать ошибки SSL сертификатов (по умолчанию включено) |
|
||||
| `-v` | Подробный вывод с отображением docstring каждого шага |
|
||||
| `--tls-mode=auto` | Режим TLS: `auto` (по умолчанию), `gost` или `standard` |
|
||||
| `--ignore-https-errors` | Игнорировать ошибки сертификатов SSL (по умолчанию включено) |
|
||||
| `-k "BP01"` | Фильтр тестов по подстроке в имени класса или метода |
|
||||
| `--co -q` | Только показать список тестов без их выполнения |
|
||||
| `--slowmo 500` | Замедление действий в браузере (в мс, по умолчанию 1000мс в `pytest.ini`) |
|
||||
| `-o addopts=""` | Сбросить дефолтные флаги `pytest.ini` (например, для headless-запуска в CI) |
|
||||
|
||||
```powershell
|
||||
# Показать список всех тестов (без запуска)
|
||||
# Просмотр дерева тестов без запуска браузера
|
||||
.\venv\Scripts\pytest.exe --co -q
|
||||
|
||||
# Запустить без браузера и без замедления
|
||||
.\venv\Scripts\pytest.exe --headless --slowmo 0
|
||||
# Быстрый запуск без задержки slowmo
|
||||
.\venv\Scripts\pytest.exe tests/01_vetdept/ --slowmo 0
|
||||
|
||||
# Запустить в headless-режиме только vetdept
|
||||
.\venv\Scripts\pytest.exe tests/01_vetdept/ --headless --slowmo 0
|
||||
|
||||
# Принудительный запуск в режиме ГОСТ TLS (через Chromium-GOST / Яндекс.Браузер)
|
||||
.\venv\Scripts\pytest.exe --tls-mode=gost
|
||||
|
||||
# Принудительный запуск в режиме стандартного TLS (встроенный Chromium Playwright)
|
||||
.\venv\Scripts\pytest.exe --tls-mode=standard
|
||||
# Запуск в режиме ГОСТ с подробным выводом
|
||||
.\venv\Scripts\pytest.exe tests/01_vetdept/ --tls-mode=gost -v
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user