Files
azionelab-v2/docs/testing.md
T

1.3 KiB

Testing

All checks run inside Docker containers.

docker compose run --rm --no-deps wordpress php -l /opt/azionelab/theme/functions.php
docker compose run --rm --no-deps wordpress php -l /opt/azionelab/theme/front-page.php
docker compose run --rm --no-deps wordpress php -l /opt/azionelab/azionelab-content.php
docker compose run --rm --no-deps proxy nginx -t
docker compose -f docker-compose.yml -f docker-compose.test.yml up --build -d db wordpress proxy
docker compose -f docker-compose.yml -f docker-compose.test.yml --profile tools run --rm wp-cli /scripts/bootstrap.sh
docker compose -f docker-compose.yml -f docker-compose.test.yml --profile test run --build --rm functional-tests
docker compose config --quiet
LETSENCRYPT_ENABLED=1 docker compose config --quiet

The normal stack uses host-based bind mounts under ./runtime by default. The test override replaces database and WordPress state with isolated Docker volumes, maps azionelab.org to the internal proxy, and never publishes an extra port. Browser tests cover content and section order, contact actions, mobile overflow/navigation, semantic landmarks, image alternatives, admin routing, security headers, blocked sensitive routes, and unknown virtual hosts.

Subjective visual review and a real-device accessibility audit remain manual release checks.