Comment tester l'ergonomie ?

Tester l’ergonomie par programme peut sembler difficile : simuler les actions utilisateur s’apparente à de l’intelligence artificielle et la complexité du programme de test doit rester limitée. Par conséquent l’IHM est souvent peu testée alors qu’il s’agit de la partie visible de l’iceberg par l’utilisateur.
Dans les environnements web il existe de nombreux frameworks open source qui permettent de tester facilement l’ergonomie. Parmi eux j’ai pu essayer simple test pour le PHP et Canoo pour le html et les scripts (merci Christophe 🙂  ). En revanche en C++ il y a pénurie d’outils gratuits performants. Une façon de contourner le problème est d’utiliser des astuces d’architecture qui permettent de tester des sous-ensembles de façon simple. Par exemple en utilisant des interfaces et le design-pattern « subject/observer », on peut écrire un test simple qui permet de vérifier que si la donnée est à jour, l’objet responsable de l’affichage l’est aussi. Prenons l’exemple d’une application qui permet de régler et contrôler le volume d’une chaine hi-fi . Voici une proposition pour l’architecture du programme :

Tester l’ergonomie du programme consiste à instancier une donnée de test que l’on liera à l’objet StereoPanel. On pourra ainsi vérifier que les objet responsables de l’affichage et la donnée de test sont en phase.

  • Ce genre de test ne valide pas la fonctionnalité du point de vue utilisateur. En revanche il est facile à écrire et garanti que lorsque les données et les contrôles sont liés, si les uns sont à jour les autres le sont aussi.
  • On voit bien ici comment rendre testable le logiciel influe sur l’architecture.