| First name | Last name | Role | Password | |
|---|---|---|---|---|
| John | Doe | admin | admin@practicesoftwaretesting.com | welcome01 |
| Jane | Doe | user | customer@practicesoftwaretesting.com | welcome01 |
| Jack | Howe | user | customer2@practicesoftwaretesting.com | welcome01 |
| Bob | Smith | user | customer3@practicesoftwaretesting.com | pass123 |
The mobile app is fully integrated with version 4 of Practice Software Testing, which means both share the same environment. Any changes you make through the mobile app (like creating or editing data) will appear on the website, and updates on the website will also show up in the app.
It will take up to 5 minutes (depending on your internet connection speed), if you run docker compose up -d for the first
time. Any subsequent docker compose up -d will take seconds. You may need to add sudo before the docker command sudo docker compose up -d
All images together are less than 1,5 GB.
This project includes multiple Docker Compose configurations to support development, testing, and production usage.
Use this when actively working on the application:
docker compose up -dThis will:
- Build the containers from local source (
docker-compose.yml) - Mount the source code for live changes
- Automatically include
docker-compose.override.yml(mailcatcher, cron, phpmyadmin)
To start the bare minimum:
docker compose -f docker-compose.yml up -dThis will:
- Use only what's defined in docker-compose.yml
- Ignore docker-compose.override.yml completely
- Skip optional services like cron, phpmyadmin, mailcatcher
docker compose -f docker-compose.prod.yml up --pull missing -d| URL | Description |
|---|---|
| http://localhost:8091 | (REST) API |
| http://localhost:8091/api/documentation | Swagger |
| http://localhost:1080 | MailCatcher |
| http://localhost:4200 | (Angular) Application |
http://localhost:8000 (root/root) |
PHPMyAdmin |
Update the SPRINT in .env to use the proper version that belongs to the sprint.
docker compose exec laravel-api php artisan migrate:fresh --seed
docker compose exec laravel-api php artisan migrate
docker compose exec laravel-api php artisan db:seed
docker-compose exec laravel-api tail -f storage/logs/laravel.log
docker compose exec laravel-api php artisan l5-swagger:generate
docker compose exec laravel-api php artisan order:update
docker compose exec laravel-api php artisan invoice:remove
docker compose exec laravel-api php artisan invoice:generate
./vendor/bin/phpunit
./vendor/bin/pest
XDEBUG_MODE=coverage ./vendor/bin/phpunit --coverage-html tests/coverage
pact-mock-service start --host localhost --port 7203 --consumer AnyConsumer --provider ProductAPI --pact-dir ./pacts --log ./storage/logs/pact.log
pact-mock-service stop --port 7203
During this initial sprint, we made some architectural decisions. We decided to implement a super-fast Laravel API, as well as an Angular frontend.
Every developer or tester can spin up the environment on its own machine. This makes testing easier, and it allows you to manipulate data.
The deliverable of Sprint0 is a Dockerized environment, just like database seeding scripts. Basically, the result is an empty environment.
If you find this project useful and want to support its ongoing development, please consider supporting it!
I appreciate your support!