RSPec est un excellent framework de test ruby (pour le développement piloté par les tests), quelqu'un sait quelque chose comme rspec mais, pour PHP?Quelqu'un sait quelque chose comme RSPec pour PHP?
Répondre
PHPUnit est la norme de facto pour UnitTesting en PHP.
Il peut faire BD Testing dans une certaine mesure:
La classe PHPUnit_Extensions_Story_TestCase ajoute un cadre d'histoire qui faciliates la définition d'une langue spécifique du domaine pour le développement du comportement Driven. A l'intérieur d'un scénario, given(), when() et then() représentent chacun une étape. et() est le même type que l'étape précédente. Les méthodes suivantes sont déclarées abstraites dans PHPUnit_Extensions_Story_TestCase et doivent être mis en œuvre:
runGiven(&$world, $action, $arguments) ... runWhen(&$world, $action, $arguments) ... runThen(&$world, $action, $arguments) ...
Edit: An more sophisticated alternative might be Cucumber avec Behat
PHPSpec est un framework de développement basé sur le comportement pour php. Je ne l'ai pas encore utilisé, cependant, je ne peux pas le commenter spécifiquement.
Ce lien fonctionne: http://www.phpspec.net/ – NicoGranelli
Behat! Construit au-dessus des composants de Symfony 2. Syntactiquement, pas aussi bien que la mise en œuvre de Ruby, mais obtenez toujours les avantages de BDD.
Je suis tombé sur moi-même et je ne l'ai pas encore utilisé. D'un coup d'œil, on dirait qu'il utilise des fermetures (ce qu'il devrait faire pour fonctionner comme RSpec/Cucumber) qui est une addition de PHP 5.3.
Behat est un clone PHP de concombre, pas RSpec. Cet outil est pour le test de comportement au niveau de l'intégration (aka tests d'acceptation), pas vraiment des tests unitaires comme RSpec. –
Il y a peu de clones RSpec en PHP.
Il y a également un cadre d'essai d'origine Codeception
Si vous êtes uniquement intéressé à la sortie des tests, vous pouvez utiliser phpunit-progress ce qui rend vos résultats des tests exactement comme les résultats de RSpecs.
Bee est très similaire, il est encore très jeune, mais je l'utilise pour certains projets.
Hope this helps ...
[Kahlan] (https://github.com/kahlan/kahlan) est une mise en œuvre plus existante (note: Je suis son créateur). – Jails