TUTORIEL PHP 
Automatiser les tests pour les applications PHP
PHP permet aux développeurs de créer des applications Web complexes : jusque-là, rien de nouveau. Cependant, les techniques pour écrire des tests automatisés ne sont pas bien connues. (05/04/2004)

(fourni par Direction PHP)

  1. Intro | 2. L'application
3. Description de l'application | 4. Au-dela des bases

Dans cet article, je vous montrerai comment écrire de puissants tests automatisés en PHP pour vos applications Web. PHP est remarquablement bien adapté pour l'automatisation des tests et le système que je présente est, de façon surprenante, court. Les applications Web construites avec PHP deviennent de plus en plus courantes en entreprises et le résultat est que leur complexité s'accroît. Avec la maturation de PHP, la capacité d'écrire des suites de tests devient très utile. Au cours de conversations avec des collègues, j'ai découvert que les techniques utilisées pour les tests automatisés des applications PHP Web n'étaient pas très connues. Dans cet article, je vous montrerai comment écrire rapidement une suite de tests efficace, qui vérifie la validité de vos applications PHP Web.

Le meilleur moyen de vous montrer ce que nous allons réaliser est avec 2 captures d'écran. La Figure 1 montre une application PHP Web factice qui accepte un nom de famille pour un employé et cherche ensuite dans une base de données MySQL pour donner l'ID de l'employé, ses prénom, nom et adresse courriel. Dans cet exemple, une recherche avec "Baker" renvoie correctement un seul employé dont l'ID est 002, prénommé Bob, et dont l'adresse courriel est bob@build.com.



Tester manuellement même cette toute petite application serait extrêmement fastidieux, long et source d'erreurs. A la place, nous pouvons tester l'application en envoyant programmant l'envoi d'une recherche au script PHP sur le serveur Web, puis en récupérant le flux de réponse et en examinant cette dernière en recherchant une valeur de réponse correcte. Finalement, le résultat sera consigné dans un historique, avec son résultat " pass " (réussi) ou " fail " (échoué). La Figure 2 montre la structure du programme PHP qui fait cela. Les cas du test 0002 et 0003 correspondent au test manuel montré dans la Figure 1.



Vous avez peut-être noté que mes exemples utilisent un système Windows/IIS plutôt que la configuration classique Linux/Apache. La plupart des compagnies clientes avec qui je collabore sont importantes et ont un environnement technologique mixte. Comme beaucoup d'entre elles expérimentent avec PHP et MySQL sur une base Windows/IIS, j'ai décidé d'utiliser cette base pour cet article.

Dans les paragraphes qui suivent, je vais décrire l'application Web PHP utilisée pour que vous puissiez comprendre ce que nous testons. Examinez brièvement la base de données MySQL utilisée, pour comprendre sa relation avec l'automatisation du test et parcourez soigneusement le programme d'automatisation PHP pour pouvoir modifier le code source en fonction de vos propres besoins. Je conclurai avec une discussion sur certaines manières de développer cette technique et de l'utiliser dans un environnement de production. Après avoir lu cet article, vous saurez écrire automatiser les tests PHP : c'est un atout très précieux.

  1. Intro | 2. L'application
3. Description de l'application | 4. Au-dela des bases
 
Dr. James McCaffrey pour JDN Développeurs
 
Accueil | Haut de page