Zum Hauptinhalt springen

QUnit Service

wdio-qunit-service ist ein Paket von Drittanbietern. Weitere Informationen finden Sie auf GitHub | npm

npm test

WebdriverIO (wdio) Service zum Ausführen von browserbasiertem QUnit Tests und deren dynamischer Konvertierung in wdio Testsuiten.

Ersatz für Karma​

QUnit Service ist ein direkter Ersatz für diejenigen, die Karma JS verwenden, um ihre QUnit Tests auszuführen (karma-qunit, karma-ui5 oder jede andere Kombination aus Karma und QUnit). Karma ist veraltet und Benutzer sollten zu modernen Alternativen wechseln!

Wenn Sie Ihre QUnit-Tests so behalten möchten, wie sie sind, ohne Umschreiben und ohne Refaktorierung, ist QUnit Service alles, was Sie brauchen. Es führt Ihre QUnit-HTML-Dateien in einem Browser aus und erfasst alle Ergebnisse im wdio-Format.

Dadurch können Entwickler QUnit Service zusammen mit allem anderen verwenden, was im wdio-Ökosystem verfügbar ist.

Möchten Sie den Testlauf in einem Video aufzeichnen? Vielleicht einen Screenshot machen oder als PDF speichern? Die Code-Abdeckung überprüfen? Die Testergebnisse im JUnit-Format speichern? Nur zu, QUnit Service steht Ihnen nicht im Weg.

Installation​

Nach der Konfiguration von WebdriverIO installieren Sie wdio-qunit-service als devDependency in Ihrer package.json-Datei.

npm install wdio-qunit-service --save-dev

Wenn Sie WebdriverIO noch nicht konfiguriert haben, lesen Sie die offizielle Dokumentation.

Konfiguration​

Um QUnit Service zu verwenden, müssen Sie es lediglich zur Liste der services in Ihrer wdio.conf.js-Datei hinzufügen. Die wdio-Dokumentation enthält alle Informationen zur Konfigurationsdatei:

// wdio.conf.js
export const config = {
// ...
services: ["qunit"],
// ...
};

Verwendung​

Stellen Sie sicher, dass der Webserver läuft, bevor Sie die Tests ausführen. wdio startet den Webserver nicht.

Mit .spec oder .test Dateien​

In Ihrem WebdriverIO-Test müssen Sie zur QUnit-HTML-Testseite navigieren und dann browser.getQUnitResults() aufrufen.

describe("QUnit test page", () => {
it("should pass QUnit tests", async () => {
await browser.url("http://localhost:8080/test/unit/unitTests.qunit.html");
await browser.getQUnitResults();
});
});

Es wird empfohlen, für jede QUnit-HTML-Testseite eine WebdriverIO-Testdatei zu erstellen. Dies stellt sicher, dass die Tests parallel und vollständig isoliert ausgeführt werden.

Nur Konfiguration, keine .spec oder .test Dateien​

Wenn Sie keine Spec/Test-Dateien erstellen möchten, können Sie eine Liste von QUnit-HTML-Dateien an die Konfiguration übergeben, und die Tests werden automatisch generiert.

// wdio.conf.js
export const config = {
// ...
baseUrl: 'http://localhost:8080',
services: [
['qunit', {
paths: [
'unit-tests.html',
'integration-tests.html',
'test/qunit.html'
]
}],
// ...
};

Testergebnisse​

Testergebnisse könnten so aussehen: QUnit Service test results

Beispiele​

Schauen Sie sich den examples Ordner für Beispiele mit javascript, typescript und mehr an.

Verwendung in SAP Fiori / UI5 Apps​

Einfaches Beispiel mit der bekannten openui5-sample-app:

  • Erstellen Sie eine Konfigurationsdatei: wdio.conf.js

  • Teilen Sie wdio mit, wo die QUnit-Testdateien zu finden sind:

    • oder
  • Der Webserver muss vor der Ausführung der Tests laufen

  • Führen Sie aus $ wdio run webapp/test/wdio.conf.js

Autor​

Mauricio Lauffer

Lizenz​

Dieses Projekt ist unter der MIT-Lizenz lizenziert - siehe die LICENSE Datei für Details.

Welcome! How can I help?

WebdriverIO AI Copilot