Quels sont les défis liés au test en production ? Neotys fait le tour du sujet.
"L'un des plus grands défis du test de performance réside dans l'environnement de test lui-même. La plupart des tests de performance et de charge sont réalisés dans un environnement de pré- production ou de test (en QA), mais il est souvent impossible de recréer un environnement réellement représentatif de la production, en particulier le coût serait trop élevé.
Les environnements de test sont différents de la production sur les aspects suivants :
De nombreuses applications intègrent des services tiers pour assurer des fonctions comme le suivi des utilisateurs ou les connexions aux réseaux sociaux.
Ces intégrations sont souvent exclues des tests en charge, car elles ne sont pas déployées dans les environnements de test. En règle générale, les environnements de test disposent de moins de serveurs ou d’une infrastructure plus réduite par rapport à la production.
Les testeurs de performance doivent donc déterminer un ratio de performance entre l'environnement de test et l'environnement de production. À première vue, on pourrait penser qu’une simple règle de trois permette de définir ce ratio, si les deux environnements utilisaient exactement les mêmes types de machines.
En pratique, les testeurs travaillent souvent sur des environnements avec moins de matériel, moins de serveurs, une base de données mutualisée et bien d'autres différences.
Dans ce contexte, le testeur peut être tenté de procéder à un test en charge dont il extrapolera ensuite les résultats pour l'environnement de production. Malheureusement, l'extrapolation se révèle souvent être une approche peu réaliste en raison des différences importantes existant entre les environnements.
C’est une solution au problème de représentativité de l'environnement mais elle requiert une application rigoureuse des meilleures pratiques pour garantir la réussite du test tout en gérant les nombreux risques associés à cette approche."