Traduction du CFTL

octobre 21st, 2010

Quelques traductions tirés du glossaire CFTL/ISTQB: 

  • action word driven testing : Test dirigé par les mots-actions 
  •  monkey testing : Test simiesque
  • automated testware : Article de test automatisés
  • moke test: : Tests fumigatoires

  Et vous, vous traduirez comment?

Citation intéressante …

octobre 12th, 2010

 » La programmation est aujourd’hui une course entre lesingénieurs informaticiens qui essaient de construire desprogrammes plus grands et mieux à l’épreuve des idiots,et l’univers qui essaie de produire des idiots plus grandset plus idiots. Jusqu’à présent, l’univers gagne. »Rich Cook

Pourquoi investir dans les tests unitaires … s’il y a des tests systèmes?

août 30th, 2010

C’est la rentrée … fini les vacances il est temps de reprendre ce blog!Pour remettre les choses en place au boulot une petite formation sur les techniques de test et en passant un rappel sur les tests unitaires les tests systèmes:

  • un test unitaire permet de tester le code, un test système les fonctionnalités offertes.
  • un test unitaire se fait  sur un environnement « mocké » généralement et un test système sur un environnement proche de la production.

Ceci étant dit quelqu’un me demande et pourquoi ne pas investir principalement sur les tests systèmes plutôt que de développer pléthore de tests unitaires qui prennent du temps. L’idée proposée n’est pas de supprimer les tests unitaires mais de les limiter …Voici ma réponse:

  1. l’absence de tests unitaires pénalise les activités de tests d’intégration et de tests systèmes. Le testeur passera son temps à « debugger », faire des aller retours avec le développeur, faire générer des versions plus adéquates et le temps perdu grèvera les tests systèmes de haut niveau (cas d’utilisation, robustesse, scénario complexe). Le « debug » de code est plus rapide lors des tests unitaires en phase de développement. Pour un cycle en V, on court à la catastrophe car le volume de code livré à la validation transformera la phase des tests systèmes en un parcours du combattant pour debugger et mettre au point l’application. De plus les testeurs seront démotivés et fatigués.
  2. Une couverture de code élevée permet d’améliorer la stabilité et la maturité du logiciel. En effet il est illusoire de penser que le test d’endurance ou de robustesse à lui seul va garantir ces caractéristiques. La combinatoire est souvent trop importante pour espérer être exhaustif dans ce domaine. Mais un code testé unitairement permet de contrôler par exemple les exceptions, toutes les branches etc. et donc moins de mauvaises surprises.
  3. Les tests unitaires permettent également de modifier le code de façon sereine en particulier lors de correction d’anomalies et lors la maintenance corrective et évolutive.

Environnements de test

juin 25th, 2010

Pourquoi les environnements de test et de développement doivent être séparés?

Il arrive que pour des raisons économiques ces environnements soient communs. C’est un mauvais calcul à court terme et une perte de temps assurée.D’un point de vue pratique il est difficile de partager l’environnement et la gestion de l’accès aux ressources risque de créer des tensions. Si la plateforme est utilisée par différentes personnes en même temps,  l’analyse des problèmes, l’interprétation des logs risquent d’être complexes. Il faudra également s’entendre sur les données de tests. Pendant les phases de test on est souvent amené à redémarrer une plateforme de test. A plusieurs il faut se synchroniser. Bref l’exécution des tests va être laborieuse. Après avoir travaillé pendant quelques mois dans ces conditions j’ai fini par réclamé une machine par testeur pour que chacun puisse travailler de façon indépendante. Ce fût sans conteste un gain de temps inestimable.

D’un point de vue « éthique » exécuter les tests systèmes sur une plateforme de développement est peu recommandé. J’ai constaté que ces plateformes étaient patchées, contenaient des mocks et la base de données pas toujours cohérentes. Dans ces conditions les résultats de tests menés par la validation ne sont pas fiables. Il faut donc un environnement « propre »:

  • installation de l’application en suivant les directives du manuel d’installation que l’on valide par la même occasion;
  • approvisionnement de la base par des procédés valides (éviter les requêtes SQL directes qui peuvent mener à des bases incohérentes).

Vous découvrirez certainement des anomalies qui amèneront cette réflexion habituelle du développeur:

« Et pourtant çà marche chez moi! »,

preuve irréfutable que les environnement de test et de développement sont différents.

la sécurité applicative

mai 20th, 2010

Si vous désirez vous instruire sur la sécurité applicative je vous conseille le site de l’OWASP.

Vous y trouverez des explications sur les différentes attaques mais également de quoi vous exercez: une application web à installer webgoat, comportant un certain nombre de trous de sécurité et également webscarab un proxy qui vous permettra d’espionner les trames http mais également de les intercepter pour les modifier.

Ces applications seront utiles pour sensibiliser les intervenants à un projet sur les problématiques de sécurité … Rien ne vaut une bonne démonstration!

publication d’un article sur la testabilité

mai 19th, 2010

Je viens de publier un article qui propose des pistes pour améliorer la testabilité d’un projet sur developpez.com. Je vous invite à le consulter ici: testabilité.

Un forum dédié test

avril 7th, 2010

Des questions,  des réponses sur le test:

Faites un tour sur le forum:le forum des testeurs

Article sur Model Based Testing paru dans methods and tools

avril 2nd, 2010

Method and tools vient de faire paraître dan son édition de printemps un article intéressant sur le Model Based Testing. L’auteur présente la démarche et en souligne la principale difficulté:  concevoir le modèle. Mais cette réflexion sur le modèle est également le moyen le plus efficace de revoir et améliorer les exigences. Retrouvez son analyse içi!

Descriptif du numéro:

  • Using WatiN to Leverage Common Elements in Web Testing
  • Five Symptoms of Mechanical Agile
  • Writing Testable Code
  • Model-Based Testing Adds Value
  • Tool: Sonar
  • Tool: Express – Agile Project Management
  • Tool: Apache JMeter

Bonne lecture.

Speccy: configuration

mars 31st, 2010

Pour certains types de test il peut être intéressant de connaître l’exacte configuration du PC sur lequel on effectue les tests:

Voici un utilitaire qui vous renseignera en un clin d’œil:

configpc.JPG

Des informations plus précises sont disponibles après sélection sur l’onglet de gauche.

Lien pour télécharger (Attention c’est une version beta) : à suivre.
Speccy

Software Testing Europe

mars 31st, 2010

Un nouveau site dédié aux offres d’emploi dans le métier du test est né.  En bonus un IPAD à gagner si vous vous inscrivez dans les premiers !!!

Alors à vos CVs!
Software Testing Europe