Outil de test de charge pour n’importe quel site web, basé sur Locust. Les URLs à solliciter sont chargées depuis un sitemap XML du site cible.
- Docker
- Un site exposant un sitemap (ex.
https://www.example.com/sitemap.xml)
Lancer le test de charge :
make stress_testLe script demande ensuite :
- URL de base du site (ex.
https://www.example.com) - URL du sitemap (ex.
https://www.example.com/sitemap.xml)
L’interface web de Locust est disponible sur http://localhost:8089/ : tu peux y définir le nombre d’utilisateurs virtuels, le débit de montée en charge et consulter les statistiques en temps réel.
- Les URLs sont chargées une fois au démarrage depuis le sitemap.
- Chaque utilisateur virtuel :
- visite la page d’accueil (URL première du sitemap) avec un poids de 3 ;
- visite une page aléatoire du sitemap avec un poids de 7 ;
- attend entre 1 et 5 secondes entre chaque requête.
- Si le sitemap est indisponible ou invalide, seul
/est utilisé.
Utilisées par le script et par locustfile.py :
| Variable | Description |
|---|---|
LOCUST_BASE_URL |
URL de base du site à tester |
LOCUST_SITEMAP_URL |
URL du sitemap XML |
Avec Docker, en passant les variables à la main :
docker run --rm -it --network host \
-v "$(pwd):/mnt/locust" -w /mnt/locust -p 8089:8089 \
-e "LOCUST_BASE_URL=https://www.example.com" \
-e "LOCUST_SITEMAP_URL=https://www.example.com/sitemap.xml" \
locustio/locust -f locustfile.py --host "https://www.example.com"L’interface reste sur http://localhost:8089/.