Je sais que nous pouvons automatiser les applications AngularJs avec Selenium. Mais nous avons un cadre de test E2E distinct qui est le rapporteur pour l'automatisation des applications AngularJs.
Quelqu'un peut-il m'aider à comprendre pourquoi nous devrions utiliser Protractor? Pourquoi pas le sélénium?
Je ne suis pas sûr de comprendre votre question. Ai-je raison de supposer que vous préférez utiliser le sélénium - mais que vous voulez comprendre ce qui vous manque?
Eh bien - Selenium fournit des moyens d'automatiser les navigateurs Web - et donc utilisé pour les tests automatisés e2e. L'API Selenium a des implémentations dans plusieurs langages de programmation majeurs - vous permettant d'écrire vos tests en Java, C #, python, Ruby, JavaScript et plus encore.
Si vous disposez déjà d'un cadre de test e2e basé sur Selenium - vous pouvez également l'utiliser pour les applications Web AngularJS. Vous pouvez également écrire les scripts JavaScript nécessaires qui, une fois exécutés à l'aide du pilote Web, vous permettront de faire tout ce que fait Protractor, mais vous devrez le faire vous-même (emprunter simplement le code source de Protractor).
Pourquoi est-ce faisable? Parce que Protractor a essentiellement pris en charge l'implémentation JavaScript de Selenium Webdriver et l'a enveloppé d'une manière qui vous facilite la vie lors des tests Angular Applications Web JS).
Vous pouvez voir des explications spécifiques dans ce vieux message: http://testautomation.applitools.com/post/94994807787/protractor-vs-Selenium-which-is-easier
Je dirais que si vous: 1. voulez écrire votre code de test en JavaScript 2. vous concentrez principalement sur Angular JS apps
Vous voudrez peut-être envisager d'utiliser Protractor. Encore une fois - pas de magie là-bas. Tout ce qu'ils ont fait est là dans leur code source - vous pouvez donc faire votre choix si vous préférez rester avec Selenium.
protractor
est un framework de test d'automatisation de navigateur de bout en bout qui fonctionne via WebDriverJs
qui est un pilote Web Selenium javascript.
Citation de Comment ça marche? page de documentation:
Selenium est un framework d'automatisation de navigateur. Selenium comprend le serveur Selenium, les API WebDriver et les pilotes de navigateur WebDriver.
Protractor fonctionne en collaboration avec Selenium pour fournir une infrastructure de test automatisée qui peut simuler l'interaction d'un utilisateur avec une application Angular exécutée dans un navigateur ou un appareil mobile.
Protractor est un wrapper autour de WebDriverJS, les liaisons JavaScript pour l'API Selenium WebDriver.
Regarde aussi:
Avec rapporteur, vous pouvez écrire des tests e2e avec JavaScript, la langue que vous écrivez avec l'application Angular.
En outre, il possède des fonctionnalités spécifiques à Angular.