Tester un logiciel, le cas (d’école) de la ZEP-12

Ca y est, la zep-12 est en test (clementine/orange pour ceux qui connaissent pas)!

Les premiers enseignements de ce projet aussi monstrueux qu’intéressant tombent déjà.
Comme la qualité logicielle m’intéresse depuis un bout de temps et que je vais entrer dans l’équipe de qualification de VadeRetro Technology, je m’intéresse beaucoup à ce qui est en train d’arrivée à notre bébé.

Petit tour d’horizon de ce que je retiens de tout ça. Continue reading

Zeste de savoir : un projet opensource pour la beauté du zeste

J’ai enfin trouvé un chez moi dans le monde de l’open source.p

Même si j’ai envie de me retirer petit à petit du développement web, c’est pourtant vers publicsur un projet de site que je compte apporter ma pierre à l’édifice. Ce projet, c’est http://zestedesavoir.com.

mascotte zds

Clem’ la mascotte de zeste de savoir

Ce projet exploite la stack technologique python/django, mysqli, nginx pour le back, et SCSS, JS, Twig pour le front.

L’histoire du projet est simple : le site du zéro, géré par la société Simple IT, devenus tous les deux (le site et la société) OpenClassrooms, l’équipe dirigeante de OC a décidé un virage total en ce qui concerne la communauté de base. Aujourd’hui, la communauté historique est un poids pour le site, la volonté de partager gratuitement des connaissances ou des savoir faire n’est plus à l’ordre du jour, comme le dit une de leur éditrice “si c’est gratuit c’est vous le produit”.

Alors les anciens modérateurs, validateurs, auteurs ont commencé à réfléchir à des nouveaux projets de sites.

Dans une volonté de rassembler une communauté autodidacte à un niveau assez sérieux et qui s’oriente surtout vers l’embarqué, plusieurs d’entre eux ont créé progdupeupl.

Pendant ce temps, firm1, nohar et d’autres (comme mon ami nordiste ShigeruM) ont démarré un projet qui a la même cible que le site du zéro : les débutants.

Et comme on ne refait pas l’Histoire, il était normal que SDZ devienne… ZDS. Vient alors le nom “zeste de savoir”.

Comme progdupeupl offrait une base technique fiable, l’équipe a décidé de forker ce dernier depuis son dépot bitbucket. Et c’est le début d’une belle aventure qui se formalisera le 19 avril 2014 par un parution au journal officiel des status de l’association zestedesavoir.

Personnellement, j’arrive à cette époque comme beta testeur sur leur premier test privé. Le projet me plait, je propose mes services. Quelques semaines plus tard, le code est ouvert au public, ma première pull request peut être envoyée.

Depuis, je me concentre sur le backend, n’étant pas particulièrement doué pour l’intégration front.

Ma petite fierté, est le débuggage complet du système de tag qui permet une meilleur sémantique sur les forums de zds. Travailler sur ce système m’a permis d’en apprendre plus à propos de Solr, un moteur de recherche ultra puissant dont la seul faiblesse est qu’il est en Java et développé par la fondation Apache (documentation, tout ça…)

Ce que je désirerai faire pour le projet?

  • Créer quelques méthodes d’API en lecture pour faciliter la navigation au sein du système de tag lorsqu’on est sur mobile;
  • Ajouter la possibilité pour un membre d’envoyer une correction orthographique qui se présenterait à l’auteur comme une Pull Request
  • Une appli winphone 8.1 voire carrément une appli universelle

Suivi du projet intégré à Netbeans

Les IDE savent tout faire aujourd’hui. Leur architecture qui permettent l’ajout de plugin leur permettent de concentrer en un seul logiciel tous les outils du développement.

Le principal inconvénient de cette évolution, c’est la lenteur au démarrage voire parfois à la compilation. Mais bon quand un logiciel permet d’ajouter aux fonctionnalités habituelles telles que l’autocomplétion, la vérification syntaxique… des outils plus orientés “projets”, ça peut devenir un sacré bonheur d’avoir ces logiciels.

Grand habitué de Netbeans j’utiliserai cet IDE pour la suite du billet, mais sachez que tous les IDE ont ce genres de possibilités, à condition que la communauté (ou l’entreprise) ait développé le plug-in. Ainsi, si vous êtes fan de visual studio, d’éclipse… Un détour sur sourceforge.net vous permettra de découvrir pas mal de plugins open source.

Ce qui m’intéresse dans mon exemple c’est le support d’un gestionnaire de projet, ici redmine. Ce dernier, comme beaucoup d’autres, utilise une interface web pour tout administrer, lier, comprendre. Quand on ne développe pas un site web, c’est parfois frustrant de devoir switcher sur le navigateur pour obtenir l’information qu’on veut, ou pire pour lier un commit à une issue.

Sur redmine, pour lier un commit à un problème, puis clore ledit problème, il faut :

  1. connaître le titre ou l’identifiant de l’issue.
  2. Aller dans Repository=>sélectionner le commit=>cliquer sur “add” en dessous de “related issue”. (c’est petit en plus)
  3. retourner dans issues
  4. ouvrir l’issue
  5. changer le statut
  6. valider.

Quand on est sur netbeans, qui utilise le bugtracker bugzilla, en bas de la fenêtre de commit, on trouve une petite invitation à “mettre à jour l’anomalie”. Preuve que l’IDE a déjà prévu une telle fonctionnalité.

Pour redmine, il faudra aller chercher un plugin qui est pour l’instant en version bêta en entrant ces coordonnées dans le centre de mise à jour (Tools=>Plugin:update center) :

url : http://kenai.com/projects/redminenb/sources/redminenb/content/trunk/dist/updates/updates.xml?raw=true

update

Ensuite, plus qu’à installer le plugin. Une fois cela fait, il faudra ajouter le bugtracker à votre projet. Pour cela, ouvrez votre projet et assurez vous que c’est celui qui est sélectionné. Puis dans Team->Report Issue (signaler une anomalie) cliquez sur “new”.

Il vous proposera tous les bugtracker qu’il connait dans le premier menu déroulant. Sélectionnez redmine. Puis ensuite entrez les coordonnées.

Attention, il faudra que l’API REST soit activée pour que ça marche.

Un petit aperçu :

commit

new_issue

Il ne vous reste plus qu’à configurer vos raccourcis pour que l’accession à ce système soit encore plus rapide. N’hésitez pas aussi à leur faire des retours http://kenai.com/jira/browse/REDMINENB.