2010-08-17 4 views
2

Je me demande s'il existe de bonnes/possibles façons d'automatiser - pour un test unitaire peut-être - une action dépendant de l'homme sur un site e-commerce? Par exemple, est-ce que je pourrais avoir une macro ou un script pour simuler "l'utilisateur peut mettre des articles dans le panier?" ou "l'utilisateur peut-il accéder à la passerelle de paiement?".Un moyen d'automatiser - pour tester - une action dépendante de l'homme?

Je gère actuellement une base de code eCommerce très utilisée et je voudrais être en mesure de vérifier rapidement que les changements que j'implémente ne vont pas faire de bêtises pour l'utilisateur final.

+4

Engagez un testeur, mec. –

+0

Pourquoi gaspiller de l'argent sur un testeur quand vous pouvez automatiser? Pour le maintenir à l'essai, vous devez continuer à le payer ... une fois qu'un script de test est écrit dans Selenium, vous pouvez l'exécuter autant de fois que vous le souhaitez, quand vous le voulez. – JCD

+0

@JCD parce qu'un testeur humain sera capable de trouver des choses auxquelles vous n'avez jamais pensé. Ce sont ces choses que vous allez écrire dans un cas de test. Laissez les humains trouver et tester de nouveaux problèmes, et laissez le système automatisé confirmer qu'aucune régression ne se faufile ... – ircmaxell

Répondre

10

Découvrez Selenium ... Tous les tests exécutent dans un navigateur, de sorte que vous pouvez tester votre JS, etc ...

Edit:

Oh, et la chose vraiment cool, est Si vous utilisez Selenium Grid, vous pouvez ensuite étendre vos tests déjà écrits à plusieurs navigateurs et plates-formes. Vous écrivez donc votre test une seule fois, puis vous pouvez l'exécuter (simultanément) sur des dizaines de combinaisons différentes de navigateurs/plates-formes. Vous aurez toujours besoin d'écrire intelligemment vos cas de test, mais une fois que vous le faites, vous pouvez l'utiliser pour détecter des problèmes sur d'autres navigateurs (Tester les erreurs/plantages JS) ...

+0

Ça a l'air cool. Je pensais plutôt à quelque chose qui s'exécuterait sur le serveur en direct lorsque je ferais un déploiement automatisé. – Dougal

+0

Si vous utilisez PHPUnit, vous pouvez le faire exécuter les tests (soit en écrivant les cas de test dans PHPUnit, soit en incluant les tests de sélénium) pour vous automatiquement. Personnellement, j'utilise Phing pour le déploiement, donc je le fais exécuter tous mes tests (Unit, Integration, Functional et Selenium) automatiquement chaque cycle update/deployment/copy/etc. – ircmaxell

+0

J'utilise également Phing pour le déploiement. Ai-je raison de penser qu'on ne peut "faire" les tests de sélénium sur un machin avec une interface graphique et avec le navigateur installé et que faire? – Dougal

Questions connexes