L'utilisation de frameworks dédiés à l'automatisation des tests unitaires permet d'assurer une meilleure qualité et fiabilité du code. Cette automatisation facilite aussi le passage de tests de non-régression notamment lors des mises à jour du code. De plus, l'utilisation de ces frameworks ne nécessite aucune modification dans le code à tester ce qui sépare clairement les traitements représentés dans le code de leurs tests. Enfin, l'analyse des résultats peut être automatisée puisque chaque résultat de tests possède un statut généralement ok ou en erreur.


Entre ces phases, Squash TA gère une phase de "Run" qui consiste en général à exécuter le script de l'automate permettant de solliciter le SUT. Cette phase correspond à l'approche traditionnelle de l'automatisation. Pour cette phase Squash TA pilote des automates open source tiers comme Selenium, Sahi ou encore SoapUI, et ajoute également des fonctionnalités permettant de piloter un batch.
Les tests fonctionnels sont un excellent processus de test exhaustif qui parcoure toutes les couches d’une application. Toutefois, pour s’assurer de l’absence des anomalies, il est nécessaire de réitérer la totalité des tests suite à chaque évolution de l’application. L’exécution manuelle des tests fonctionnels d’une application en perpétuelle évolution, est longue et assujettie aux erreurs humaines. En outre, ce processus coûteux, bien qu’il soit nécessaire pour assurer la qualité de l’applicatif, il pousse souvent les organisations à s’en passer, l’exécuter partiellement ou – dans les meilleurs des cas – fixer un cycle de release assez long laissant le temps nécessaire aux tests et validation. Cette dernière alternative assure la qualité de l’application mais diminue considérablement sa compétitivité : Un bon compromis serait d’investir dans l’automatisation des tests fonctionnels. Dans ce qui suit nous étudierons les types d’outils d’automatisation disponibles et justifierons le choix porté sur l’un d’eux.
Selenium Remote Control est un framework de tests fonctionnels issu du projet Selenium, célèbre outil d'automatisation de tests pour navigateurs. Il permet d'exécuter des tests dans des navigateurs du marché, distants ou en local. Il permet d'exécuter les tests Selenium sur des des navigateurs distants en parallèle sur de multiples plateformes et versions dans plusieurs langages de programmation (Java, C#, Python, Perl, Ruby, PHP), grâce à une architecture client/serveur.

ubot studio

×