Aller au contenu principal

Service QUnit

wdio-qunit-service est un package tiers, pour plus d'informations veuillez consulter GitHub | npm

npm test

WebdriverIO (wdio) service pour exécuter des tests QUnit basés sur navigateur et les convertir dynamiquement en suites de tests wdio.

Remplacement de Karma

QUnit Service est un remplaçant direct pour ceux qui utilisent Karma JS pour exécuter leurs tests QUnit (karma-qunit, karma-ui5 ou toute autre combinaison de Karma et QUnit). Karma est déprécié et les utilisateurs devraient passer à des alternatives modernes !

Si vous souhaitez conserver vos tests QUnit tels quels, sans réécriture ni refactorisation, QUnit Service est tout ce dont vous avez besoin. Il exécute vos fichiers HTML QUnit dans un navigateur et capture tous les résultats au format wdio.

Grâce à cela, les développeurs peuvent utiliser QUnit Service en tandem avec tout ce qui est disponible dans l'écosystème wdio.

Vous voulez enregistrer l'exécution du test dans une vidéo ? Peut-être prendre une capture d'écran ou l'enregistrer en PDF ? Vérifier la couverture de code ? Enregistrer les résultats de test au format JUnit ? Allez-y, QUnit Service ne vous bloque pas.

Installation

Après avoir configuré WebdriverIO, installez wdio-qunit-service comme devDependency dans votre fichier package.json.

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

Si vous n'avez pas encore configuré WebdriverIO, consultez la documentation officielle.

Configuration

Pour utiliser QUnit Service, vous devez simplement l'ajouter à la liste des services dans votre fichier wdio.conf.js. La documentation wdio contient toutes les informations relatives au fichier de configuration :

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

Utilisation

Assurez-vous que le serveur web est opérationnel avant d'exécuter les tests. wdio ne démarrera pas le serveur web.

Avec des fichiers .spec ou .test

Dans votre test WebdriverIO, vous devez naviguer vers la page de test HTML QUnit, puis appeler 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();
});
});

Il est recommandé d'avoir un fichier de test WebdriverIO par page de test HTML QUnit. Cela garantit que les tests s'exécuteront en parallèle et de manière totalement isolée.

Configuration uniquement, pas de fichiers .spec ou .test

Si vous ne souhaitez pas créer de fichiers spec/test, vous pouvez passer une liste de fichiers HTML QUnit à la configuration et les tests seront générés automatiquement.

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

Résultats des tests

Les résultats des tests pourraient ressembler à : QUnit Service test results

Exemples

Consultez le dossier examples pour des exemples utilisant javascript, typescript et plus.

Utilisation dans les applications SAP Fiori / UI5

Exemple simple et direct example utilisant la célèbre application openui5-sample-app :

  • Créez un fichier de configuration : wdio.conf.js

  • Indiquez à wdio où trouver les fichiers de test QUnit :

    • ou
  • Le serveur web doit être en cours d'exécution avant d'exécuter les tests

  • Exécutez-le $ wdio run webapp/test/wdio.conf.js

Auteur

Mauricio Lauffer

Licence

Ce projet est sous licence MIT - voir le fichier LICENSE pour plus de détails.

Welcome! How can I help?

WebdriverIO AI Copilot