2013-09-04 2 views
1

Je suis en train d'étudier la question depuis quelques jours, et je ne comprends pas très bien comment cela fonctionne. J'ai été chargé d'explorer/de lancer le processus de test automatisé des fonctionnalités frontales pour les applications Web de mon entreprise. Jusqu'à présent, je suis en train de regarder le sélénium ou watir avec le pilote web, et avec un peu de chance, une option de navigateur sans tête. L'idée est de faire en sorte que ces scripts résident sur le serveur de développement (géré par Git) où chacun peut les appeler, et ils seront automatiquement appelés pour les nouvelles fusions, mais aussi, ils doivent être accessibles aux développeurs individuels. pour exécuter sur un navigateur réel (je suppose que cela doit être local), en plus d'un navigateur sans tête, pour le débogage et le développement de tests supplémentaires.Comment configurer/déployer des tests de fonctionnalité Web (watir/sélénium)

J'ai vu quelques choses à propos de CI (intégration continue), mais honnêtement, je suis assez débordé en ce moment. Si quelqu'un pouvait donner un exemple de la façon dont je pourrais mettre cela en place, ou du moins ce dont j'aurais besoin, je serais très reconnaissant.

Merci.

Répondre

0

La fin rapide, d'après mon expérience, en utilisant Selenium (WebDriver) et Python est rapide et facile. J'utilise PyTest pour exécuter les tests. L'IC est fait par un serveur Jenkins. PyTest pour les rapports (lu par Jenkins en utilisant le rapport .xml). Vous pouvez enregistrer des tests simples en utilisant le plugin FireFox (Selenium) et les exporter en tant que fichier Python pour une utilisation avec WebDriver.

FireFox (Selenium): https://addons.mozilla.org/en-us/firefox/addon/selenium-expert-selenium-ide/ Sélénium et Python: https://selenium-python.readthedocs.org/en/latest/index.html

Pytest: http://pytest.org/latest/

Les développeurs aiment aussi cette option, car ils peuvent les exécuter en ligne de commande (comme Jenkins fait). Plus facile à maintenir, à exécuter et à mettre à jour.

+0

Je suppose que je suis plus confus que je pensais au départ. Si vous utilisez PyTest pour exécuter des scripts, quel est l'objectif du sélénium? J'avais l'impression que le sélénium fournissait tout ce dont j'avais besoin pour écrire et exécuter des tests. Plus je regarde autour de moi, plus je me rends compte que personne ne semble utiliser le sélénium JUST, et je ne sais vraiment pas à quoi servent toutes ces autres choses. –

+0

Selenium est la bibliothèque qui exécute les tests. Py.test intègre des méthodologies de test. Je l'utilise (en partie) comme ceci: 'dave $ py.test --verbose -k test_' Les arguments de la ligne de commande,' --verbose' donne un affichage terminal des tests en cours. '-k test_' indique à py.test de ne reconnaître que def avec le test de chaîne dedans. Il existe également plusieurs outils de création de rapports à utiliser avec py.test. '--cov' et' --junitxml' sont quelques-uns que j'aime. – Dave

Questions connexes