update configuration and documentation
This commit is contained in:
@@ -19,14 +19,6 @@
|
||||
- `src/test/java` — только тестовые классы.
|
||||
- `wiremock` — маппинги и APK.
|
||||
|
||||
## Тестовые аккаунты
|
||||
- `user1us / user1us`
|
||||
- `user2us / user2us`
|
||||
- `user3us / user3us`
|
||||
- `user4us / user4us`
|
||||
|
||||
`user4us` используется как владелец подарка в тесте резервирования.
|
||||
|
||||
## Запуск
|
||||
1. Поднять окружение:
|
||||
```bash
|
||||
@@ -38,23 +30,73 @@ docker compose up -d
|
||||
docker compose ps
|
||||
```
|
||||
|
||||
3. Указать доступ к БД:
|
||||
3. Подготовить переменные окружения (использовать один из вариантов):
|
||||
|
||||
Вариант A: через `.env`
|
||||
- скопировать `.env.example` в `.env`;
|
||||
- заполнить `.env` актуальными значениями вашей среды;
|
||||
- загрузить `.env` в текущую shell-сессию.
|
||||
|
||||
PowerShell:
|
||||
```powershell
|
||||
$env:DB_URL="jdbc:postgresql://sql.otus.kartushin.su:5432/wishlist"
|
||||
$env:DB_USER="student"
|
||||
$env:DB_PASSWORD="student"
|
||||
```
|
||||
bash:
|
||||
```bash
|
||||
export DB_URL="jdbc:postgresql://sql.otus.kartushin.su:5432/wishlist"
|
||||
export DB_USER="student"
|
||||
export DB_PASSWORD="student"
|
||||
Get-Content .env | Where-Object { $_ -match '^[^#].+=.+' } | ForEach-Object {
|
||||
$name, $value = $_ -split '=', 2
|
||||
[System.Environment]::SetEnvironmentVariable($name, $value, 'Process')
|
||||
}
|
||||
```
|
||||
|
||||
bash:
|
||||
```bash
|
||||
set -a
|
||||
source .env
|
||||
set +a
|
||||
```
|
||||
|
||||
Вариант B: напрямую в shell-сессии
|
||||
|
||||
PowerShell:
|
||||
```powershell
|
||||
$env:DB_URL="jdbc:postgresql://<host>:<port>/<db>"
|
||||
$env:DB_USER="<db_user>"
|
||||
$env:DB_PASSWORD="<db_password>"
|
||||
$env:WISHLISTS_USERNAME="<login_1>"
|
||||
$env:WISHLISTS_PASSWORD="<password_1>"
|
||||
$env:GIFTS_USERNAME="<login_2>"
|
||||
$env:GIFTS_PASSWORD="<password_2>"
|
||||
$env:RESERVATION_USERNAME="<login_3>"
|
||||
$env:RESERVATION_PASSWORD="<password_3>"
|
||||
$env:RESERVATION_OWNER="<login_owner>"
|
||||
```
|
||||
|
||||
bash:
|
||||
```bash
|
||||
export DB_URL="jdbc:postgresql://<host>:<port>/<db>"
|
||||
export DB_USER="<db_user>"
|
||||
export DB_PASSWORD="<db_password>"
|
||||
export WISHLISTS_USERNAME="<login_1>"
|
||||
export WISHLISTS_PASSWORD="<password_1>"
|
||||
export GIFTS_USERNAME="<login_2>"
|
||||
export GIFTS_PASSWORD="<password_2>"
|
||||
export RESERVATION_USERNAME="<login_3>"
|
||||
export RESERVATION_PASSWORD="<password_3>"
|
||||
export RESERVATION_OWNER="<login_owner>"
|
||||
```
|
||||
Оба варианта эквивалентны: тесты используют переменные окружения процесса.
|
||||
|
||||
Тесты запускаются параллельно по классам (2 потока) и распределяются по эмуляторам через очередь.
|
||||
4. Запустить тесты:
|
||||
```bash
|
||||
mvn test
|
||||
```
|
||||
|
||||
Тесты запускаются параллельно по классам (2 потока) и распределяются по эмуляторам через очередь.
|
||||
Примечание: если нужен запуск только на одном эмуляторе, можно поднять только `wiremock` и `android-emulator-1`, а перед `mvn test` задать:
|
||||
|
||||
PowerShell:
|
||||
```powershell
|
||||
$env:MOBILE_EMULATORS="android-emulator-1|http://127.0.0.1:4723|Android Emulator"
|
||||
```
|
||||
bash:
|
||||
```bash
|
||||
export MOBILE_EMULATORS="android-emulator-1|http://127.0.0.1:4723|Android Emulator"
|
||||
```
|
||||
|
||||
|
||||
Reference in New Issue
Block a user