Comment utiliser le logiciel Protractor on non angularjs?

J'ai trouvé le cadre Protractor qui est conçu pour les applications Web AngularJS.

Comment puis-je utiliser Protractor sur un site Web qui n'utilise pas AngularJS?

J'ai écrit mon premier test et Protractor déclenche ce message: Error: Angular could not be found on the page https://www.stratexapp.com/ : retries looking for angular exceeded

Si votre test doit interagir avec une page non angulaire, accédez directement à l'instance webdriver avec browser.driver .

Exemple des documents de Protractor

 browser.driver.get('http://localhost:8000/login.html'); browser.driver.findElement(by.id('username')).sendKeys('Jane'); browser.driver.findElement(by.id('password')).sendKeys('1234'); browser.driver.findElement(by.id('clickme')).click(); 

Une autre approche consiste à définir browser.ignoreSynchronization = true avant browser.get (…). Protractor n'attendrait pas le chargement angulaire et vous pouvez utiliser la syntaxe d'élément habituel (…).

 browser.ignoreSynchronization = true; browser.get('http://localhost:8000/login.html'); element(by.id('username')).sendKeys('Jane'); element(by.id('password')).sendKeys('1234'); element(by.id('clickme')).click(); 

Au lieu de Protractor, vous pouvez utiliser pour e2e tester Testcafe .
Avantages:

  • Syntaxe ES2016
  • Pas besoin de dépendances, de configurations et de plugins de navigateurs supplémentaires
  • Sélecteurs flexibles
  • Configuration facile

Pour tester sur un site non angulaire, vous devez supprimer la synchronisation. Pour cela, utilisez ce qui suit:

 browser.ignoreSynchronisation = true; browser.get('url');