Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vinceamstoutz/php-demo-mutation-testing
PHP 8.3 demo for Mutation Testing using PHPUnit & Pest
https://github.com/vinceamstoutz/php-demo-mutation-testing
coverage-testing mutation-testing pest php phpunit quality
Last synced: 1 day ago
JSON representation
PHP 8.3 demo for Mutation Testing using PHPUnit & Pest
- Host: GitHub
- URL: https://github.com/vinceamstoutz/php-demo-mutation-testing
- Owner: vinceAmstoutz
- License: mit
- Created: 2024-11-03T18:51:40.000Z (2 days ago)
- Default Branch: main
- Last Pushed: 2024-11-04T08:16:02.000Z (1 day ago)
- Last Synced: 2024-11-04T09:18:02.211Z (1 day ago)
- Topics: coverage-testing, mutation-testing, pest, php, phpunit, quality
- Language: PHP
- Homepage:
- Size: 79.1 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Mutation Testing Demo
Ce projet accompagne la conférence **"Débusquez les failles cachées : Maîtrisez vos tests PHP avec PHPInfection & Pest"**,
présentée par Vincent Amstoutz.L'objectif de cette conférence est de montrer comment les tests de mutations peuvent renforcer la robustesse
des tests PHP, en utilisant des outils tels qu'[Infection PHP](https://infection.github.io/) et [Pest](https://pestphp.com/).## Prérequis ⚠️
> [!IMPORTANT]
> Les commandes décrites ci-dessous nécessitent l'utilisation de [Castor](https://castor.jolicode.com/) ! Assurez-vous que Castor est bien installé et configuré sur votre machine.## Installation
Pour installer les dépendances du projet, utilisez la commande suivante :
```bash
castor install
```## Lancer les tests
### Tests unitaires 🧪
Avec PHPUnit
```bash
XDEBUG_MODE=coverage php bin/phpunit --testsuite=Phpunit
```
Avec Pest
```bash
XDEBUG_MODE=coverage vendor/bin/pest --testsuite=Pest
```### Tests de mutation 👽
Avec Infection PHP (qui utilise PHPUnit)
```bash
XDEBUG_MODE=coverage tools/infection/vendor/bin/infection
```
Avec Pest
```bash
XDEBUG_MODE=coverage php vendor/bin/pest --testsuite=Pest --mutate
```## Outils de qualité de code (PHP-CS-Fixer, PHPStan & Rector) 💎
```bash
castor lint
```> [!NOTE]
> Ce projet est destiné à des fins de démonstration et d'apprentissage. Pour une mise en œuvre en production,
> veuillez consulter la documentation de chaque outil et adapter la configuration en fonction de vos besoins.
>## Licence
Ce projet est sous licence MIT. Voir le fichier [LICENSE](LICENSE) pour plus de détails.