La taverne du testeur

Le jeu vidéo : en avance sur son test !

Le jeu vidéo est probablement la plus ancienne industrie de logiciel grand public. Pour rappel, la première génération de console date de 1972 avec l’Odyssey. L’Atari 2600, grand succès commercial, a quant à elle été commercialisée en 1977 !

De plus, les « tests » de jeux avant leur sortie sont légions… Ces tests sont fait par des testeurs/rédacteurs qui ne sont pas employés par l’éditeur (les tests faits par l’éditeur étant fait en amont). Dans ces tests il est rarement uniquement question du fonctionnel… Il est d’ailleurs bon de remarquer que le fonctionnel fait rarement parti du test publié ou lorsque c’est le cas cela ne représente qu’une infime partie de ce dernier. Voici 3 exemples de ces tests, faits par un testeur/rédacteur, pour le jeu Zelda Breath of the Wild 123. On peut s’apercevoir de la profondeur des tests fait sur un jeu par les sites spécialisés. Il y a quelques années il y avait même un système de notation par catégorie. Ces catégories Pouvaient être les graphismes, le gameplay, l’immersion, la musique, la précision…

Il n’est alors pas étonnant que cette industrie, qui a une grande expérience dans les logiciels et qui est sujet à des tests approfondis avant la sortie de leurs logiciels, ait mis en place depuis longtemps des tests qui sont encore considérés comme novateur ou même faisant encore parti du futur du test.

Par novateur, je pense à tout ce qui est Alpha et Bêta test à grande échelle.

Par futur du test, je pense évidemment à tout ce qui est non fonctionnel… Et pour le non fonctionnel je ne pense pas uniquement aux performances ! Certains de ces tests non fonctionnels sont d’ailleurs effectués lors des Bêta tests.

Il est bon de noter que les tests fonctionnels sont également faits, les tests fonctionnels étant dans la quasi-totalité des entreprises les premiers tests implémentés. Ces tests sont néanmoins de plus en plus rarement suffisants!

  • Les Bêta tests

Pour faire simple, on peut dire qu’il y a 2 catégories de jeux vidéo :

La première est l’industrie des consoles (ou bornes d’arcade). Pour cette dernière l’environnement est simple car le hardware exécutant le jeu est toujours le même (Maintenant, les consoles possèdent toujours des versions de firmwares, du coup, on ne joues plus dans les mêmes conditions).

La seconde est l’industrie PC. Pour celle-ci le problème du hardware est beaucoup plus élevé. En effet, il y a quasiment autant de joueurs PC que de configurations différentes. Je pense évidemment aux cartes graphiques (qui peuvent être parallélisées) et aux processeurs qui se comptent par centaines, mais aussi aux différents écrans, souris, claviers… Car oui, même les périphériques jouent un rôle important dans l’utilisation d’un logiciel et donc d’un jeu vidéo.

Afin de limiter ces problèmes il y a pour tout jeu une « configuration minimale ». Cette configuration minimale doit néanmoins rester accessible à la majorité des joueurs visés. En effet, une configuration minimale trop élevée peu faire qu’un jeu soit un échec ou une raison de cet échec (cela a été le cas pour le MMORPG Age of Conan)

L’industrie PC du jeu vidéo fait donc face à un problème similaire à celui de l’IoT (le nombre quasi illimité d’environnements) et a donc depuis longtemps mis en place des Bêta tests pour faire face à cette problématique.

J’ai personnellement participé à de nombreuses bêtas test. Les dernières étant celles de Diablo 3, Heroes VII, HearthStone et Slay the Spire… Si j’ai pu participer à tant de campagnes de tests d’acceptation pour des jeux qui m’intéressent c’est parce que les entreprises proposant ces tests ont besoin de retours d’utilisateurs avant de commercialiser leur logiciel. Ces retours utilisateurs permettent d’avoir de très nombreuses heures de test effectuées par des futurs joueurs du jeu et donc sur de nombreux environnements qui seront utilisés en production. Les joueurs remontent donc de nombreuses anomalies qui peuvent être ensuite étudiées puis corrigées avant la sortie officielle.

Cela fonctionne un peu comme de CrowdTesting mais dans ce cas, la seule « rétribution » du joueur est de pouvoir jouer avant les autres à un jeu auquel il souhaite jouer.

Certains éditeurs se servent même des Bêta tests pour faire des tests de charge. C’était le cas de Blizzard pour Diablo 3 mais aussi, plus récemment, pour le jeu Magic The Gathering Arena.

Enfin, afin de réussir à regrouper tant de joueurs, les éditeurs de jeux vidéo ont mis en place de solide campagne de communication afin de pouvoir avoir des campagnes efficaces.

  • Le non-fonctionnel

Le secteur du jeu vidéo est un secteur très concurrentiel. Il y a d’ailleurs bien longtemps que le fonctionnel. Quand je dis bien longtemps je pense à (au moins depuis) la sortie de Space Invaders en 1978. A ce moment-là on a rapidement vu sortir de nombreux « clones » de ce jeu. Par clone j’entends des jeux avec les mêmes fonctionnalités. Space Invaders est néanmoins le seul à être resté dans l’histoire… Et pas uniquement car c’était le premier.

Les jeux « clones » ou iso-fonctionnels ne sont pas limités à Space invaders, pac-man ou autre jeu… Et encore moins à l’époque des années 70-80. Non les jeux iso-fonctionnels sont la norme. Je pense par exemple aux FPS (Golden Eye, Call of Duty…), aux jeux de sport (un jeu de foot reste un jeu de foot), aux jeux de stratégie (Starcraft, Command and Conquer…), aux jeux d’aventure (Zelda, The Witcher, Fable…), aux jeux de plateforme (Mario, Super Meat Boy…), de combat (Street Fighter, les Smash Bros…), aux RPG (Final Fantasy, Pokémon…)…

Il n’existe quasiment pas de jeu « inclassable » et ces jeux inclassables sont régulièrement des mixtes de types de jeu (ex : la série Heroes of Might and Magic : stratégie, RPG et gestion) ou deviennent des types de jeu qui seront copiés (ex : Le MOBA avec Dota qui a été copié par League of Legend mais aussi bien d’autres jeu).

Le fonctionnel seul, et ce malgré la présence de nombreux Game designer au talent indéniable, ne peut donc quasiment plus faire la différence et beaucoup de raisons du succès d’un jeu dépendent du non-fonctionnel.

Attention, le fonctionnel reste très important, il ne faut pas le négliger!

Par le non-fonctionnel j’entends évidemment :

  • Les performances (temps de réponse, consommation de ressources et même de capacité).

Dans un FPS en réseau, le « ping » (temps passé entre le moment où l’action est faite par le joueur et le moment où elle se fait réellement) est particulièrement regardé.

Un jeu doit être accessible au plus grand nombre de joueurs… Et donc consommer le moins de ressources possible pour ne pas les forcer à racheter du matériel.

Beaucoup de ces tests se font pendant les Bêta.

Un jeu non-ergonomique ne connaitra jamais le succès. Par non-ergonomique on peut penser à la prise en main, ou l’utilisation de boutons habituels pour des actions habituelles (ex: pour sauter dans les jeu sur NES, il fallait utiliser le bouton A. Les rares jeux qui ont pris la décision d’utiliser le bouton B n’ont jamais eu de succès).De même afin de renforcer l’immersion, beaucoup de travail est fait sur les mouvements et l’environnement du jeu. Pour les jeux de foot les gestes sont reproduits par de vrais professionnels puis numérisés comme sur les films. Une des dernières critiques du prochain PES parle même du très bon travail effectué pour avoir un bon rendu de l’herbe du terrain…

Un jeu doit être intelligible sous peine de perdre le joueur dès les premières minutes

Un jeu doit proposer une courbe de difficulté et d’apprentissage cohérente (les vidéos du joueur de grenier pointent régulièrement des difficultés aberrantes rendant un jeu très mauvais alors que sur tous les autres points il est bon).

Des tests d’accessibilités sont aussi effectués par certains éditeurs dont le but est d’avoir le public le plus large. Un problème fréquent de non-accessibilité est au niveau des couleurs avec les personnes daltoniennes.

Beaucoup de ces tests se font pendant les Bêta.

Un jeu doit être fiable, robuste, il ne doit pas freezer ou crasher lors de manipulation complexe ou non pensées lors du développement.

Un jeu doit être disponible. A quoi bon avoir un jeu si l’on ne peut pas y jouer quand on veut ? C’est un problème régulier qu’il y a lors des lancements des jeux ou des leurs nouvelles mises à jour. Il arrive régulièrement que le jeu ne soit pas accessible. Dans ce cas, si cela ne dure pas longtemps les joueurs comprennent… Mais dès lors où ces évènements durent ou se répètent, on voit fleurir des messages de joueurs mécontents mais surtout une baisse significative du nombre de joueurs… Qui revient à régler le problème.

Beaucoup de ces tests se font pendant les Bêta (notamment les tests de robustesse)

Si un jeu est jouable sur internet et/ou sur PC cette partie est également très importante.

Un jeu doit pouvoir être exécuté en même temps que d’autres programmes et ce sans perte de performance.

Beaucoup de ces tests se font pendant les Bêta.

  • La maintenabilité

Un jeu avec des mises à jour fréquentes ou des jeux qui peuvent être joués pendant des années (World of Warcraft, Hearthstone, League of Legend…) doivent être maintenable sous peine de ne pas tenir sur la durée.

  • La portabilité,

Un jeu PC ou mobile doit être adaptable. C’est-à-dire, un jeu PC ou mobile se doit de fonctionner sur différents terminaux. Un jeu Android ne fonctionnant pas sur les Samsung se retrouverait fortement handicapé !

La politique d’obsolescence avec une configuration minimale existe. Il faut cependant faire attention à ce que les configurations supérieures fonctionnent mais aussi à ce que cette configuration minimale ne soit pas rédhibitoire.

  • Et la sécurité

Un jeu collectant des données personnelles (jeux de plus en plus fréquents) doit assurer une sécurité de ces données.

Un jeu proposant des sauvegardes et/ou de la compétition entre joueurs se doit d’assurer une protection de l’avancement du joueur, des équipements des personnages pour les RPG, des scores réalisés…

Conclusion :

Le jeu vidéo est une industrie logicielle à la pointe au niveau des tests. Le secteur est tellement concurrentiel, la différence entre un succès majeur ou un échec critique si ténue que les éditeurs de jeu vidéo ont mis en place de nombreux types de tests qui ne sont que très rarement utilisés de nos jours.

Dans ce secteur plus que dans tout autre (pour le moment) le non-fonctionnel est devenu prépondérant et les éditeurs ont su s’adapter en mettant en place des tests liés à ce non-fonctionnels, en engageant des professionnels de ces sujets.

Bref, on peut dire que le jeu vidéo est en avance sur son test… Euh, sur son temps !

Nous qui travaillons dans le logiciel et voyons de nombreuses problématiques émergées (avec l’IoT, les problématiques de sécurité et d’accessibilité) serions bien avisé de regarder un peu du côté du jeu vidéo afin d’apprendre à leur côté ! En effet, le jeu a beaucoup à nous apporter, que cela soit au niveau des tests d’acceptation et leur système de Bêta test très performant qu’au niveau des tests non fonctionnels avec les tests dédiés mis en place.

Bon jeu à tous !

Je tiens à préciser que cet article ne parle pas des « testeurs » de jeux vidéos mais bien des tests effectués dans l’industrie du jeu vidéo.

Merci à Nicolas Huynh ses retours afin d’améliorer cet article

Pensez à rejoindre le groupe Le métier du test si le test vous intéresse !

N’hésitez pas à me suivre et lire mes autres articles si vous voulez en apprendre plus sur le test ou venir partager vos connaissances

Merci à tous ceux qui mettent « j’aime », partagent ou commentent mes articles

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Interview

Riadh ABID: Test lead/Manager

Bonjour, qui êtes-vous, quel est votre métier et quelles sont vos activités professionnelles ? Bonjour, je suis Riadh ABID, Test Lead/Manager et enseignant de Software Quality Assurance dans une école d’ingénieurs. Je travaille dans le domaine de la qualité logicielle depuis 10 ans. J’ai fait plusieurs expériences variées entre l’opérationnel (le

Lire la suite »
Données

Outil de test: anonymisez vos données avec DOT anonymizer

DOT anonymizer est un outil d’anonymisation de données développé par la société ARCAD Software. Ce n’est pas proprement un outil de « test » mais un outil qui peut s’avérer essentiel… particulièrement dans un contexte RGPD. La proposition de cet outil est de récupérer l’ensemble ou une partie des données de production

Lire la suite »
Image représentant le test et de nombreux éléments liés
Images

Le test en image (2)

Pyramide niveaux des tests L’importance des tests métier Exécution seule TDD Processus cas en échec N’hésitez pas à rejoindre le groupe Le métier du test N’hésitez pas à me suivre et lire mes autres articles si vous voulez en apprendre plus sur le test ou venir partager vos connaissances Merci à tous ceux

Lire la suite »