ATOUM: Une alternative courante au phpunit pour les tests PHP
ATOUM est un cadre de test PHP contemporain, présentant une alternative convaincante au phpunit. Son interface courante hiérarchise la lisibilité et simplifie la création de test. Ce tutoriel explore l'installation, la configuration et les fonctionnalités de base d'ATOUM, mettant en évidence ses avantages pour le développement de PHP moderne.
Caractéristiques de clé:
atoum/stubs
, facilitant l'achèvement du code et le débogage. given
, when
, then
) et une approche plus directe, répondant à diverses préférences. au-delà du phpunit: pourquoi choisir AToum?
Alors que PHPUnit détient une position dominante dans le paysage des tests PHP, ATOUM offre une approche rafraîchissante. Sa conception moderne et son interface intuitive rationalisent le processus de test, particulièrement bénéfique pour les développeurs à la recherche de lisibilité et de facilité d'utilisation améliorées.
Installation et configuration:
Installez ATOUM et le package essentiel atoum/stubs
à l'aide du compositeur:
composer require atoum/atoum composer require atoum/stubs
Pour l'intégration optimale de phpstorm (ou IDE similaires), le package atoum/stubs
est crucial pour l'amélioration du code.
Configuration (.atoum.php):
Personnaliser les rapports et la sortie de la couverture du code en créant un fichier .atoum.php
dans le répertoire racine de votre projet:
<?php use mageekguy\atoum; $stdout = new atoum\writers\std\out; $report = new atoum\reports\realtime\santa; // Or cli, phing, tap, NyanCat $script->addReport( $report->addWriter($stdout) );
Configurer la couverture du code HTML en créant un répertoire /coverage/html
et en adaptant vendor/atoum/resources/configurations/runner/coverage.php.dist
(renommer à coverage.php
):
<?php // ... (Update paths and URLs as needed) ...
Rédaction de votre premier test:
ATOUM recommande la création d'un répertoire tests/units
reflétant la structure source de votre application. Par exemple, un test pour une entité src/App/Entity/Journal.php
résiderait dans tests/units/Entity/Journal.php
.
Exemple de test à l'aide du style BDD:
composer require atoum/atoum composer require atoum/stubs
Exécution de tests et de couverture de code:
Exécuter des tests avec la couverture du code en utilisant:
<?php use mageekguy\atoum; $stdout = new atoum\writers\std\out; $report = new atoum\reports\realtime\santa; // Or cli, phing, tap, NyanCat $script->addReport( $report->addWriter($stdout) );
Le rapport de couverture du code HTML sera généré dans le répertoire /coverage/html
.
Débogage avec dump()
:
pour le débogage, utilisez la méthode dump()
(nécessite l'exécution avec -d
ou --debug
):
<?php // ... (Update paths and URLs as needed) ...
Annotations: @php et @Extensions:
ATOUM exploite les annotations pour le contrôle de test avancé:
@php <version></version>
: Spécifie la version PHP requise pour une méthode de test ou une classe. @extensions <extension1> <extension2> ...</extension2></extension1>
: Spécifie les extensions de PHP requises. Conclusion:
ATOUM fournit une alternative puissante et conviviale au phpunit. Son interface fluide, ses fonctionnalités intégrées et sa prise en charge des scénarios de test avancés en font un concurrent solide pour le développement de PHP moderne. Bien que la courbe d'apprentissage initiale puisse être légèrement plus abrupte que le phpunit, les avantages à long terme en termes de lisibilité et de maintenabilité sont significatifs. Explorez sa documentation approfondie et ses extensions pour débloquer son plein potentiel.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!