2016-04-18 13 views
16

Natürlich kann ich selenium-standalone mit Xpath verwenden, um eine App zu testen. Aber das Testen von SPA könnte irgendwann eine Herausforderung sein.Was ist eine ordnungsgemäße Ende-zu-Ende-Test (e2e) in Vue.js

Aber zum Beispiel Angularjs Team bietet protractor für diesen Zweck.

Der Grund Winkelmesser ich sehen kann ist, dass Winkelmesser wartet, bis AngularJS geladen und einige weitere Features werden:

Protractor bietet einige neue Locator Strategien und Funktionen, die sind sehr hilfreich, um die AngularJS Anwendung zu automatisieren . Beispiele gehören Dinge wie: waitForAngular, By.binding, By.repeater, By.textarea, By.model, WebElement.all, WebElement.evaluate usw.

Also, die Frage ist: Ist Gibt es ein Tool oder eine Best Practice für E2e-Tests in Vuejs?

UPD: zögern Sie nicht, Links zu Tutorials, Beispiel und alles, was cool über e2e-Tests in vue.js. Vielen Dank.

+3

Werfen Sie einen Blick auf die Beispiele von Evan You, dem Schöpfer von Vue. https://github.com/vuejs/vue-cli Es gibt auch Links zu einigen Beispielanwendungen, die Tests wie https://github.com/vuejs-templates/webpack enthalten. – Jeff

Antwort

14

Das Werkzeug, an das Sie denken, ist Nightwatch. Damit können Sie E2E-Tests mit Vue.js durchführen.

Noch besser, das ist standardmäßig gebündelt, wenn Sie vue-cli verwenden, bereit zu laufen.

Die Befehlszeile zum Erstellen eines Projekts mit standardmäßig aktiviertem Nightwatch lautet vue init webpack myProjectName.

Hier sind smalltutorials darüber.

EDIT: In letzter Zeit habe ich Webdriver.io viel, und ich muss sagen, dass ich es vorziehen Nachtwache (bessere Dokumentation, reaktive Gemeinschaft mit einem Live-gitter, Probleme, die in einer angemessenen Frist behandelt werden, etc.)

11

I empfehlen zu verwenden https://devexpress.github.io/testcafe.

Vorteile:

  • leicht
  • kompletter Test-Harnisch
  • installieren Javascript ES2016 mit (async/warten)
  • flexible Selektorsystem
  • intelligenten Behauptungen mit Wiederholungs Politik
  • Berichte

Siehe das einfache Tutorial here

1

Ich empfehle Cypress.

  • Einzel NPM Abhängigkeit
  • Videoaufzeichnung direkt aus der Box
  • GUI, die jeden Schritt des Tests zeigt.

Unsere Dokumente sind groß: https://on.cypress.io/intro

Für Vue speziell dieses Tutorial sehen: https://vuejsdevelopers.com/2018/01/29/vue-js-e2e-test-hacker-news/ und wenn Sie wollen Einheit Testen von Vue Komponenten https://github.com/bahmutov/cypress-vue-unit-test

Viel Spaß beim Testen zu tun.

+0

Aber Cypress unterstützt nur Chrome-basierte Browser richtig? – rfodge