mirror of
https://github.com/tips-of-mine/gestion-certificats2.git
synced 2025-06-28 12:48:42 +02:00
feat: Mise en place de PHPUnit et d'une pipeline CI/CD GitHub Actions
Ce commit introduit un environnement de test avec PHPUnit et configure une pipeline d'intégration continue et de déploiement continu (CI/CD) utilisant GitHub Actions. Les changements suivants ont été apportés : 1. **Configuration de PHPUnit** : * Ajout d'un fichier `php/composer.json` pour gérer les dépendances PHP, avec PHPUnit inclus comme dépendance de développement. * Création d'un fichier de configuration `php/phpunit.xml.dist` pour PHPUnit. * Mise à jour du `php/Dockerfile` pour installer Composer et les dépendances du projet (y compris celles de développement) lors de la construction de l'image Docker. 2. **Premier Test** : * Création d'un répertoire `php/tests/` pour héberger les tests. * Ajout d'un test unitaire initial (`php/tests/Utils/DarkModeTest.php`) pour la classe `App\Utils\DarkMode` afin de valider la configuration des tests. 3. **Pipeline CI/CD avec GitHub Actions** : * Création d'un workflow GitHub Actions dans `.github/workflows/ci.yml`. * La pipeline se déclenche sur les `push` et `pull_request` vers la branche `main`. * Elle installe PHP, met en cache les dépendances Composer, installe les dépendances et exécute la suite de tests PHPUnit. 4. **Documentation** : * Mise à jour des fichiers `README.md` et `docs/languages/README.fr.md` pour inclure des instructions sur la manière d'exécuter les tests localement et une description de la nouvelle pipeline CI/CD. Ces ajouts permettent d'améliorer la qualité du code en automatisant les tests et en s'assurant qu'aucune régression fonctionnelle n'est introduite lors de futurs développements.
This commit is contained in:
@ -2,4 +2,37 @@
|
||||
|
||||
La documentation pour le projet Gestion Certificat en Français est en cours de rédaction.
|
||||
|
||||
## Tests
|
||||
|
||||
Ce projet utilise PHPUnit pour les tests unitaires. Pour exécuter les tests localement, suivez ces étapes :
|
||||
|
||||
1. **Installez les dépendances de développement :**
|
||||
Assurez-vous d'avoir Composer installé. Ensuite, naviguez vers le répertoire `php/` et exécutez :
|
||||
```bash
|
||||
composer install
|
||||
```
|
||||
Cette commande installera PHPUnit et les autres dépendances nécessaires au développement.
|
||||
|
||||
2. **Lancez la suite de tests :**
|
||||
Une fois les dépendances installées, vous pouvez exécuter la suite de tests PHPUnit. Depuis la racine du projet, exécutez :
|
||||
```bash
|
||||
php/vendor/bin/phpunit --configuration php/phpunit.xml.dist
|
||||
```
|
||||
Ou, si vous êtes déjà dans le répertoire `php/` :
|
||||
```bash
|
||||
vendor/bin/phpunit --configuration phpunit.xml.dist
|
||||
```
|
||||
|
||||
## CI/CD (Intégration Continue / Déploiement Continu)
|
||||
|
||||
Nous utilisons GitHub Actions pour automatiser l'exécution des tests à chaque fois que des modifications sont poussées (`push`) ou qu'une demande de tirage (`pull_request`) est faite sur la branche `main`.
|
||||
|
||||
Le workflow, défini dans `.github/workflows/ci.yml`, effectue les actions suivantes :
|
||||
- Prépare l'environnement avec la version PHP spécifiée.
|
||||
- Met en cache les dépendances Composer pour accélérer les builds.
|
||||
- Installe les dépendances du projet.
|
||||
- Exécute la suite de tests PHPUnit.
|
||||
|
||||
Cela garantit que toute nouvelle modification est automatiquement testée, aidant à maintenir la qualité et la stabilité du code.
|
||||
|
||||
[Retour au README principal](../../README.md)
|
||||
|
Reference in New Issue
Block a user