Servizio QUnit
wdio-qunit-service è un pacchetto di terze parti, per maggiori informazioni consultare GitHub | npm
WebdriverIO (wdio) servizio per eseguire test basati su browser QUnit e convertirli dinamicamente in suite di test wdio
.
Sostituzione di Karma
QUnit Service
è un sostituto immediato per chi utilizza Karma JS per eseguire i propri test QUnit
(karma-qunit, karma-ui5 o qualsiasi altra combinazione di Karma e QUnit). Karma è deprecato e le persone dovrebbero passare ad alternative moderne!
Se desideri mantenere i tuoi test QUnit così come sono, senza riscritture e senza refactoring, QUnit Service
è tutto ciò di cui hai bisogno. Esegue i tuoi file HTML QUnit in un browser e cattura tutti i risultati in formato wdio
.
Grazie a questo, gli sviluppatori possono utilizzare QUnit Service
insieme a tutto il resto disponibile nell'ecosistema wdio
.
Vuoi registrare l'esecuzione del test in un video? Magari fare uno screenshot o salvarlo in PDF? Controllare la Code coverage? Salvare i risultati dei test in formato JUnit? Vai avanti, QUnit Service
non ti ostacola.
Installazione
Dopo aver configurato WebdriverIO
, installa wdio-qunit-service
come devDependency nel tuo file package.json
.
npm install wdio-qunit-service --save-dev
Se non hai ancora configurato WebdriverIO
, consulta la documentazione ufficiale.
Configurazione
Per utilizzare QUnit Service
devi solo aggiungerlo all'elenco services
nel tuo file wdio.conf.js
. La documentazione wdio contiene tutte le informazioni relative al file di configurazione:
// wdio.conf.js
export const config = {
// ...
services: ["qunit"],
// ...
};
Utilizzo
Assicurati che il server web sia attivo e funzionante prima di eseguire i test. wdio
non avvierà il server web.
Con file .spec o .test
Nel tuo test WebdriverIO, devi navigare nella pagina di test HTML QUnit, quindi chiamare browser.getQUnitResults()
.
describe("QUnit test page", () => {
it("should pass QUnit tests", async () => {
await browser.url("http://localhost:8080/test/unit/unitTests.qunit.html");
await browser.getQUnitResults();
});
});
Si consiglia di avere un file di test WebdriverIO per ogni pagina di test HTML QUnit. Questo garantisce che i test vengano eseguiti in parallelo e completamente isolati.
Solo configurazione, nessun file .spec o .test
Se non vuoi creare file spec/test, puoi passare un elenco di file HTML QUnit alla configurazione e i test verranno generati automaticamente.
// wdio.conf.js
export const config = {
// ...
baseUrl: 'http://localhost:8080',
services: [
['qunit', {
paths: [
'unit-tests.html',
'integration-tests.html',
'test/qunit.html'
]
}],
// ...
};
Risultati dei test
I risultati dei test potrebbero apparire così:
Esempi
Controlla la cartella examples per esempi che utilizzano javascript
, typescript
e altro.
Utilizzo nelle app SAP Fiori / UI5
Un esempio diretto utilizzando la ben nota openui5-sample-app:
-
Crea un file di configurazione: wdio.conf.js
-
Indica a
wdio
dove trovare i file di test QUnit: -
- Includi i file QUnit nella configurazione del servizio
-
- oppure
-
- Crea un file di test WebdriverIO per test unitari e un altro per test OPA5
-
Il server web deve essere in esecuzione prima di eseguire i test
-
Esegui $
wdio run webapp/test/wdio.conf.js
Autore
Mauricio Lauffer
Licenza
Questo progetto è concesso in licenza con la Licenza MIT - vedi il file LICENSE per i dettagli.