Un petit post pour annoncer une prochaine série de posts décrivant le projet JinFeng.

JinFeng est un nom chinois signifiant « Phoenix doré ».

C’est le nom que j’ai choisi pour la plateforme d’intégration et de tests que je suis en train de construire à base d’outils open-source et de scripts écrits en python/jython.

Cette plateforme repose principalement sur les outils Jenkins/TestLink/RobotFramework/Selenium/Sikuli, fonctionnant ensemble grâce au plugin Jenkins/Testlink de Bruno P. Kinoshita et des scripts de ma composition.

Une version 0.2 est déjà packagée mais je ne la trouve pas d’un niveau suffisant pour être diffusée.
J’ai également prit un peu de retard sur la rédaction des articles décrivant la plateforme, pour des raisons d’ordre « professionnel ». Mais tout devrait bientôt rentrer dans l’ordre. D’ici là, voici déjà un schéma général de l’architecture de la plateforme JinFeng.JinFeng

 A très bientôt pour plus de détails.

Olivier

TestLink est un outil de gestion de tests open source.

Il permet de créer des projets de tests, composés de plans de test, suites de tests, cas de test.

Il permet également de définir des exigences, ainsi que des Builds, Platforms…

Enfin, il peut générer tout un ensemble de métriques et de rapports permettant de suivre la couverture des tests, les campagnes de tests, les anomalies découvertes…

TestLink offre la possibilité d’automatiser un certain nombre d’opérations via une API qui utilise le protocole XML-RPC.

Dans le cadre du projet JinFeng, j’ai donc eu le besoin d’utiliser l’API de TestLink en utilisant le langage Python, qui est l’un des composants choisi pour développer JinFeng.

Le principe de JinFeng est de créer une plateforme de tests permettant d’effectuer toutes les étapes de l’industrialisation de tests (déploiement des environnements, installation des AUT, gestion documentaire des tests, gestion des campagnes de tests, exécution des campagnes de test de charge/fonctionnelles/techniques/etc…, collecte des résultats, création de métriques et de rapports, suivi des anomalies), tout ceci automatiquement, et si possible en utilisant des ordres en langage naturel. Chacune de ces tâches étant réalisée par un outil open source différent, le lien est réalisé par un « noyau » écrit en Python. Utiliser le même langage pour l’ensemble de la plateforme me semble être une des conditions primordiale pour la réussite de ce projet.

Ne trouvant pas de librairie open source complète en Python permettant d’accéder à l’API de TestLink, j’ai donc été obligé d’en démarrer le développement.

Je la met à disposition en open source sur github, pour tous ceux qui souhaitent à leur tour améliorer leur utilisation de TestLink en automatisant des tâches avec Python.

La librairie (TestLinkAPI.py) est disponible ici:

https://github.com/orenault/TestLink-API-Python-client

Je fourni également un exemple d’utilisation, permettant de créer :

– un nouveau projet

– un plan de test

– 3 suites de test

– 2 cas de tests composés chacun de 5 étapes de test

Dans un prochain article, je détaillerai le contenu de la librairie ainsi que son fonctionnement.

Remerciements à:

Bruno P. Kinoshita (pour son développement de l’API en Java)

James Stock (dont l’ébauche de client m’a inspiré : testlink-api-python-client R7)

 

© 2011 SQA Open Suffusion theme by Sayontan Sinha