Externalisation Test des Logiciels (Nearshore)

Nos équipes et nos services seront toujours à votre disponibilité. Assurons le bon développement et le test de vos besoins et applications  à distance toute en offrant une connexion haut débit pour garantir la haute performance du travail servi.

Le test du logiciel

Le test du logiciel est une approche dynamique de la vérification, destinée à s’assurer que ce logiciel possède effectivement les caractéristiques requises pour son contexte d’utilisation. La première action à entreprendre est donc de décrire avec précision ce contexte, en particulier les fonctionnalités attendues, les contraintes d’environnement, ou encore les situations dangereuses à considérer.

Le test a pour objectifs :

  • De détecter d’éventuels écarts entre le comportement attendu et le comportement observé au cours des tests, ce qui élimine un grand nombre de fautes présentes dans le logiciel.
  • D’obtenir la confiance nécessaire avant l’utilisation opérationnelle. Il faut cependant noter que le nombre de fautes détectées ne peut pas être considéré comme un critère de réussite des tests. Le retour d’expérience montre en effet qu’à complexité technique et industrielle constante, un grand nombre d’erreurs détectées par rapport à d’autres projets « de référence » peut seulement être interprété comme l’indicateur d’un logiciel contenant un très grand nombre de fautes et non comme l’atteinte d’un bon taux de détection des fautes présentes. Il est donc très difficile d’avoir confiance en un logiciel ayant un grand nombre de fautes détectées par le test.

Les différents tests du logiciel

Les tests doivent être menés à différents niveaux du développement d’un logiciel, ils se décomposent en :

Tests unitaires, pour démontrer que chaque module effectue toute la fonction prévue et seulement cette fonction. On peut distinguer dans ces tests unitaires :

  • Les tests de logique (recherche d’erreur, vérification de l’enchaînement correct des branches parcourues) ;
  • Les tests de calcul (vérification des résultats des calculs, des performances, de l’exactitude des algorithmes).

Typiquement, les tests de calcul comprennent les tests de données dans les limites des spécifications (état normal), aux limites spécifiées et en dehors de ces limites (état anormal). Les tests de comportements anormaux (hors limites, erreurs) sont généralement appelés tests de robustesse.

Tests d’intégration du logiciel, pour démontrer le bon fonctionnement d’unités fonctionnelles constituées d’un assemblage de modules. Ils portent principalement sur la vérification des enchaînements entre modules, la circulation des données, les aspects dynamiques, les séquences d’événements prévus et les reprises en cas d’interruption.

Tests de validation, pour s’assurer que le logiciel implanté dans le matériel répond aux spécifications fonctionnelles, en vérifiant plus particulièrement les fonctions générales, les interfaces matériel / logiciel, le fonctionnement temps réel, les performances, l’utilisation et l’allocation des ressources. Cette décomposition du test, reliée au cycle de vie, distingue les tests de validation du logiciel de ceux du système. Elle montre ainsi clairement qu’il est nécessaire de vérifier d’une part, la conformité du logiciel à ses exigences propres et d’autre part, la conformité du système à ses exigences (les premières étant déduites des secondes). Cette distinction ne doit cependant pas conduire à valider le logiciel indépendamment du matériel sur lequel il est implanté.

Formulaire demande de service