SoapUI - Test de performance

Les tests de performances sont l'un des points de contrôle importants les plus courants dans les tests de services Web. Les tests de performances sont définis comme la création ou la simulation artificiellement de la charge et la mesure de la manière dont l'environnement la gère.

Cela signifie qu'il n'est pas nécessaire que le système fonctionne sous une charge élevée, mais aussi comment il fonctionne sous une charge de base ou une charge attendue. Il n'a même pas besoin d'être structuré, automatisé ou créé dans TestWare tel que SoapUI; Le simple fait de rafraîchir le navigateur Web encore et encore très rapidement est également un test de charge.

Types de tests de performance

Voici les types de tests de performance -

  • Baseline Testing - Examine comment un système fonctionne sous une charge attendue ou normale et crée une base de référence par rapport à laquelle les autres types de tests peuvent être comparés.

  • Load Testing- Comprend l'augmentation de la charge et voir comment le système se comporte sous une charge plus élevée. Pendant les tests de charge, l'utilisateur peut surveiller les temps de réponse, le débit, l'état du serveur et bien plus encore. Le but du test de charge n'est pas de briser l'environnement cible.

  • Soak Testing - Le but des tests est de s'assurer qu'aucun comportement indésirable n'apparaît sur une période plus longue.

  • Scalability Testing- Le test d'évolutivité ressemble beaucoup au test de charge, mais au lieu d'augmenter le nombre de requêtes, il augmente la taille ou la complexité des requêtes envoyées. Par exemple, l'envoi de requêtes volumineuses, de pièces jointes volumineuses ou de requêtes profondément imbriquées.

Aspects clés du service Web

Deux aspects ressortent des caractéristiques uniques des performances des services Web.

Premier aspect

Du côté du serveur, le traitement XML / JSON est en cours, à la fois l'analyse XML / JSON et la sérialisation . La chose qui échoue souvent en premier est le traitement des charges utiles. Les raisons de l'échec peuvent être multiples; il peut s'agir de la plate-forme, des faiblesses du serveur d'applications ou d'un problème d'implémentation sous la forme de WSDL inutilement complexes. Cela pourrait également signifier que le code envoie une demande à une base de données qui répond lentement.

Testing Aspect- La complexité de l'analyse de la charge utile XML / JSON signifie qu'il est nécessaire de se concentrer davantage sur les tests d'évolutivité. Cela signifie également que les WSDL doivent être examinés de près. Si les demandes et les réponses sont complexes ou plus volumineuses, ou si elles incluent des pièces jointes volumineuses, l'accent doit être mis sur l'accentuation de la complexité et de voir comment il se comporte sous charge.

Deuxième aspect

Un autre facteur fréquemment rencontré est la sécurité. Les sites sécurisés derrière HTTPS ont des performances considérablement inférieures et dans les tests de services Web, nous pouvons ajouter une couche de sécurité WSSecurity à la couche de sécurité HTTP, ce qui diminue encore plus les performances.

Testing Aspect- La question des moyens de sécurité, il faut se concentrer sur la réalisation de tests de requêtes sécurisées. Si l'ensemble du service Web est sécurisé, cela signifie que le test de charge est plus important, en particulier si WS-Security et la gestion des jetons sont utilisés.