Greboca  

LinuxFr.org : les journaux  -  Un harnais de test pour Qt

 -  Décembre 2018 - 

Bonjour Nal,

Je viens de publier ce harnais de test qui permet de lancer facilement des tests écrits avec le moteur de Qt et de collecter les résultats dans un rapport en HTML.

Le contexte

Qt fournit quelques classes pour réaliser des tests unitaires, mais ils proposent de générer une application séparée pour chaque test, et de les lancer toutes à la fois via un "make check". Les résultats sont alors affichés sur la console et pénibles à lire. De plus il faut écrire beaucoup de code "inutile" pour générer le test sous forme d'un exécutable.

La solution

L'idée de ce harnais est de simplifier le code autour du test.
On aura donc:
- Un seul exécutable, c'est plus simple
- Une possibilité de lancer tous les tests, ou un seul, via la ligne de commande
- On conserve l'exécution de chaque test comme un process séparé, ce qui évite qu'un test perturbe le suivant
- Une façon très simple (une seule ligne de code) d'enregistrer un test supplémentaire
- Une sortie en XML avec une feuille de style xslt pour générer un rapport en HTML avec les tests réussis, échoués, et aussi les logs, warnings et erreurs émis par le code testé pendant l'exécution.

Voilà, rien de très exceptionnel mais il me semble que ça manquait dans le système de tests unitaires fourni avec Qt.

Concrètement, une fois les tests écrits il y a juste à lancer "make check" pour obtenir directement le rapport en HTML.

Mot de la fin

Je vous laisse fouiller le dépôt github pour ceux qui souhaitent approfondir.

Merci à mon employeur Viveris Technologies qui a autorisé la publication de ce code sous licence libre (pour ceux qui pensent que c'est important, c'est du MIT). Ce code a été écrit il y a quelques années, mais c'est seulement maintenant que j'ai pu l'extraire du projet dans lequel il a été développé.

Commentaires : voir le flux atom ouvrir dans le navigateur

par pulkomandy

LinuxFr.org : les journaux

LinuxFr.org : Journaux

PHP 7.3 apporte le support des contrôles dans PHP-LDAP

 -  19 janvier - 

Sommaire PHP-LDAP PHP 7.2: les opérations étendues PHP 7.3: les contrôles Futur PHP 7.3 est sorti le 6 décembre 2018 et apporte le support des (...)


Hackathon Factur-X le 24-25 janvier 2019 à Paris

 -  19 janvier - 

Le Forum National de la Facture Electronique (FNFE-MPE) organise un Hackathon sur Factur-X le 24-25 janvier 2019 dans les locaux de GS1 France à (...)


Debian, installations automatiques et ARM

 -  16 janvier - 

Sommaire Installation réseau automatisée pour x86mauvais sujet, changer sujet on cause d'ARM?ARM, boot standard ARM, boot réseau Conclusion et purge (...)


Mes activités open-sources / libres récentes

 -  10 janvier - 

Sommaire ExchangeCalendar Home Bank acme-dns-tiny xmpp-pane et Ibex Hein ? Kadabra évolue ! Cher journal, Toujours dans l'idée de parler des (...)


Sur l'intérêt des systèmes de protections des courriers électroniques (DKIM, SPF et DMARC)

 -  7 janvier - 

Sommaire SPF, DKIM, et DMARCSPF : Sender Policy Framework DKIM : DomainKeys Identified Mail DMARC : Domain Message Authentication Reporting & (...)