2014-12-09 16 views
12

So che possiamo automatizzare le app di AngularJs con Selenium. Ma abbiamo un framework di test E2E separato che è l'automazione delle applicazioni di Protractor for AngularJs.Le app di angularjs possono essere automatizzate con selenio? se sì, perché dovremmo usare il goniometro?

Qualcuno può aiutarmi a capire il motivo per cui dovremmo usare goniometro? Perché non il selenio?

+0

Il voto per chiudere come troppo ampio perché non c'è davvero alcun limite alle risposte che possono essere date a questa domanda e fatta eccezione per le risposte ovviamente terribili, le risposte non saranno oggettivamente graduabili. Sto testando un'app Angular ma non utilizzo Protractor principalmente perché Angular è un piccolo pezzo di un'app molto più grande in questo progetto e avevo già un'infrastruttura basata su Python per il test. – Louis

+0

@Louis c'è sicuramente un punto nel tuo commento. Personalmente, ho solo cercato di chiarire che il 'goniometro 'è ancora interamente basato sul selenio perché sembra che l'OP stia mescolando mele e arance. – alecxe

+0

@Louis - Ho fatto una domanda simile [nel forum SQA] (http://sqa.stackexchange.com/questions/14555/e2e-testing-of-angular-app-with-python-backend-protractor-javascript-vs- webdriv) - abbiamo python/webdriver pageobject framework, una forte preferenza per Python su Javascript, che chiede se vale la pena cambiare il goniometro, quali sono le trappole –

risposta

6

protractor è un framework di test di automazione del browser end-to-end che funziona tramite WebDriverJs, che è un web javascript selenio.

Citazione di How it works? pagina di documentazione:

Il selenio è un framework per l'automazione del browser. Il selenio include il server Selenium , le API WebDriver e il driver del browser WebDriver .

Il goniometro funziona in combinazione con Selenium per fornire un'infrastruttura di prova automatica in grado di simulare l'interazione dell'utente con un'applicazione angolare in esecuzione in un browser o dispositivo mobile.

Il goniometro è un wrapper su WebDriverJS, i collegamenti JavaScript per l'API Selenium WebDriver.

enter image description here

Vedi anche:

2

Con goniometro, è possibile scrivere i test E2E con JavaScript, la lingua si scrive con app angolare.

Inoltre, ha caratteristiche specifiche angolari.

  • I suoi elementi finder attendono il ciclo $ digest di Angular e $ http per finire. Quindi avrai meno possibilità di lottare con il sonno e problemi di temporizzazione.
  • È possibile selezionare elementi con alcune delle direttive comuni come ng-model, ng-repeat, ng-bind, ecc Questo è un po utile perché si può avere relativamente meno gli ID e le classi in applicazioni angolari, perché ne avete bisogno solo per CSS.
16

Non so se ho capito la tua domanda. Ho ragione di presumere che preferisci usare il selenio, ma vuoi capire cosa ti stai perdendo?

Bene - Il selenio fornisce i mezzi per automatizzare i browser web - e quindi utilizzato per i test automatizzati E2E. L'API Selenium ha implementazioni in diversi linguaggi di programmazione principali, consentendo di scrivere i test in Java, C#, python, ruby, JavaScript e altro ancora.

Se si dispone già di un framework di test E2E selenio con sede a posto - si può utilizzare anche per AngularJS web-apps. Puoi anche scrivere gli script JavaScript necessari che, una volta eseguiti utilizzando il webdriver, ti permetteranno di fare tutto ciò che fa il goniometro, ma dovrai farlo tu stesso (basta prendere in prestito dal codice sorgente di Goniometro).

Perché è fattibile?Perché il goniometro ha fondamentalmente preso l'implementazione JavaScript di Selenium Webdriver e lo ha avvolto in un modo che rende la vita un po 'più facile durante il test delle applicazioni web Angular JS.

Potete vedere le spiegazioni specifiche in questo vecchio post di mine: http://testautomation.applitools.com/post/94994807787/protractor-vs-selenium-which-is-easier

Direi che se: 1. desidera scrivere il codice di prova in JavaScript 2. sono focalizzati sulla principalmente angolare JS apps

Si potrebbe prendere in considerazione l'utilizzo di Goniometro. Ancora una volta - nessuna magia lì. Tutto quello che hanno fatto è lì nel loro codice sorgente - quindi puoi semplicemente prendere le tue scelte se preferisci rimanere con il selenio.

+0

A chi ha votato per la risposta negativa - cura di commentare cosa c'è di sbagliato in esso? –

+0

Hi Doron, Potete indicarmi come implementare l'API JavaScript del goniometro in Java da utilizzare in Selenium Java Frameworks esistenti. Grazie In anticipo ...... – Sravan

Problemi correlati