how perform backend testing
Qu'est-ce que le test backend et comment l'exécuter?
Les applications logicielles sont complexes; il y a plus que ce que l'on voit.
Les plus efforts de test du système passez par GUI. En effet, les tests vérifient si le logiciel est «apte à l’utilisation» par l’utilisateur final ou non. Les utilisateurs finaux utilisent l'interface graphique et nous aussi; c'est pourquoi il est vraiment important que les logiciels se comportent bien dans ce domaine.
Mais le logiciel comporte également de nombreux autres éléments qui ne sont pas directement visibles ou disponibles pour l'utilisateur pour une interaction directe. Cela ne rend pas ces éléments moins importants et ils doivent également subir des tests approfondis.
La combinaison de tous ces éléments fonctionnant bien fait une application logicielle entièrement formée. Nous pouvons combiner tout ce que nous ne voyons pas directement comme «back-end».
Certains des éléments de test du backend sont:
- Base de données
- Apis
- Les serveurs
Selon la nature de l'application, un back-end peut inclure différentes configurations de réseau, protocoles de communication, etc. Mais le plus souvent, il y a trois éléments.
Voyons maintenant ce qu'implique le test de chacun de ces composants et comment.
Ce que vous apprendrez:
Test de la base de données backend
Le plus souvent, lorsque le terme «test back-end» est utilisé, il implique un test de base de données.
La base de données est un élément important de toute application. Lorsque l'interface graphique et la base de données interagissent de manière transparente, votre application fonctionne bien. S'il y a des problèmes, vous rencontrez des résultats incohérents, des menaces de sécurité et des goulots d'étranglement des performances.
Les bases de données sont généralement validées pour:
- Propriétés ACID
- Opérations CRUD
- Schéma
- Migration
- Conformité aux règles métier
- Sécurité
- Performance
Les systèmes avancés de maintenance ETL et d'entrepôt de données nécessiteront également des tests.
Pour plus d'informations sur ces types de tests , veuillez consulter les articles suivants qui sont déjà sur notre site =>
- Tout sur les tests de bases de données - Pourquoi, comment et quoi tester?
- Test ETL vs DB
- Test ETL - Conseils, techniques, processus et défis
En plus du contenu des liens ci-dessus, il est important de rappeler que les tests de bases de données, d'ETL et d'entrepôt de données nécessitent une meilleure connaissance du SQL .
De nombreux outils sont souvent utilisés par les testeurs pour interagir et valider le comportement de la base de données via des requêtes.
Examinons quelques catégories de ces outils de test de base de données backend:
# 1) Interfaces qui vous permettent de vous connecter et d'exécuter vos requêtes sur les bases de données.
Certains d’entre eux ont une interface graphique et d’autres pas.
- CRAPAUD: Je suis sûr que tout le monde en a entendu parler. Il prend en charge de nombreuses bases de données et plates-formes. Il existe à la fois en version gratuite et en version commerciale. Vous trouverez plus d'informations, de ressources et la version gratuite sur toadworld
- pHpMyAdmin: C'est un excellent outil open source qui vous permet d'exécuter des requêtes et d'interagir avec votre base de données via une interface utilisateur. J'ai personnellement utilisé cela et mon équipe aime à quel point l'outil est intuitif. Nous n'avions besoin d'aucune formation pour être à l'aise. Je recommande vivement cet outil si vous recherchez un support de connexion à vos bases de données MySQL et MariaDB phpmyadmin
- HeidiSQL: Très similaire à pHpMyAdmin. Il se connecte à MySQL, aux bases de données Microsoft SQL et à PostgreSQL. Open source. Trouvez plus d'informations sur hheidisql
La liste des outils est infinie, mais ce qui précède fait partie des choix les plus populaires.
# 2) Outils d'analyse comparative de la charge et des performances de la base de données:
- HammerDB: C'est un outil open source dont de nombreux experts DB se portent garant. Je n'ai personnellement pas utilisé cela mais il prend en charge de nombreuses bases de données. D'après les captures d'écran et son apparence, cela ressemble à un outil qui vaut le détour. Plus de détails sur hammerdb
- PLOUC: L'outil Silly Little Oracle Benchmark vous aide à chronométrer et à évaluer le style d'E / S des transactions DB. Il peut vous aider à comprendre le processeur, la mémoire et les temps de traitement des transactions en masse sur votre système. Plus de détails sur kevinclosson
- Banc pivotant : C'est un outil très similaire à HammerDB. Cela fonctionne sur les bases de données Oracle et est très efficace. Pour comprendre l'outil et ses fonctionnalités, essayez ce guide: dominicgiles
Test API
L'API n'est pas à proprement parler le back-end, mais comme nous regroupons vaguement tout ce qui n'est pas visible pour l'utilisateur final en tant que back-end, parlons-en brièvement aussi.
API signifie Application Program Interface et c'est essentiellement là que réside toute la logique de programmation. Il n'a pas d'interface utilisateur, ce qui est l'un des plus grands défis lorsqu'il s'agit de le tester. D'un autre côté, comme les API sont généralement créées avant la création de l'interface utilisateur de l'application, tester l'API signifie généralement des tests précoces.
La messagerie et l'envoi / la réception d'appels sont utilisés au lieu de l'envoi et de la réception directs des données d'entrée et de sortie.
L'outil le plus utilisé pour les tests d'API est SOAPUI.
- STH en tant que tutoriel complet sur SoapUI à => 15+ tutoriels SoapUI - Votre guide complet de SoapUI
- HP UFT peut également vous aider avec ceci => 16 Nouvelles fonctionnalités de HP UFT - QTP vs UFT
Toutes les bases de données et applications elles-mêmes sont installées sur des serveurs qui maintiennent ces systèmes opérationnels.
Il y a quelques tests qui sont exécutés ici:
# 1) Installation: Une fois l'installation terminée, vous pouvez aller dans les dossiers respectifs et vous assurer que les fichiers / éléments sont arrivés dans leurs dossiers cibles comme ils étaient censés le faire. Maintenant, si vous vous demandez «comment saurai-je où tout doit aller?», Demandez à vos équipes de développement ou de déploiement et elles pourront vous le confirmer.
protocoles utilisés dans chaque couche du modèle osi
Cette étape n'est peut-être pas obligatoire, mais certaines entreprises utilisent des déploiements manuels. Dans ce cas, cela pourrait devenir un test de fumée / santé mentale étape.
# 2) Journaux: Des journaux sont conservés pour l’état de chaque transaction sur les serveurs. Cela nous permettra de savoir si le processus de bout en bout a été un succès.
IT support questions et réponses d'entrevue de technicien
Parfois, le frontal envoie des données valides et la base de données peut être mise à jour correctement. Que faire si cette opération lève une exception, provoque une fuite de mémoire ou provoque une sorte de dysfonctionnement? Ce sont les journaux côté serveur qui vous révéleront ces informations.
Ce n'est pas une règle, mais en général, la plupart des serveurs sont des systèmes UNIX. Donc, pour pouvoir les utiliser facilement, vous allez avoir besoin d'un moyen de vous connecter à votre serveur.
PuTTy, haut la main, est le choix le plus populaire pour se connecter à vos serveurs. Mastic est un produit open source et ne nécessite aucune installation. Tout ce que vous avez à faire est de le télécharger et de l'utiliser.
Les systèmes UNIX n'ont pas d'interface utilisateur graphique et c'est ce qui les rend parfaits pour être des serveurs d'applications et de bases de données. Ils sont sécurisés, abstraits, plus rapides et moins chers. Il existe de nombreuses versions d'UNIX et en raison de l'absence de GUI, nous devrons utiliser des commandes pour communiquer avec le serveur. Nous avons tous nos ressources de référence pour Commandes UNIX et celui-ci est à moi: ingénieur libre
# 3) Performances et sécurité du serveur:
Comme toute autre partie du logiciel, le serveur doit être sécurisé et réactif.
Il existe de nombreux outils disponibles pour vérifier cela et pour en trouver un qui fonctionne pour vous, consultez cette liste: 30+ outils de test d'applications Web les plus populaires
Pour terminer,
Comme vous devez l'avoir remarqué, cet article à lui seul ne vous aidera pas à apprendre les tests backend dans son intégralité. Cependant, il vous oriente vers des ressources et des références qui vous aideront à le maîtriser. Alors, ajoutez-le à vos favoris pour référence!
De plus, pour ceux d'entre nous qui ont tendance à penser que les tests fonctionnels sont une question d'interface graphique et de front-end, cet article devrait montrer que ce n'est pas le cas.
Que vous cherchiez dans la base de données ou que vous recherchiez dans le journal l’état d’une transaction ou que vous envoyiez un message de demande à un certain service, vous validez l’aptitude du programme à être utilisé.
En d’autres termes, c’est la fonctionnalité. Les «où vous testez» et «comment vous testez» diffèrent.
Tout comme une application doit fonctionner de tous les côtés pour réussir, nous, les testeurs, devons comprendre et explorer les nombreuses facettes d'un système logiciel pour le déclarer prêt à être utilisé.
A propos de l'auteur: Cet article est écrit par Swati S., membre de l'équipe STH.
C'est à votre tour de partager!
Dites-nous comment nous avons fait avec cet article. Existe-t-il un autre type de test backend que vous effectuez? Quels outils utilisez-vous? Quelles techniques avez-vous trouvées utiles? Des défis?
Vos commentaires, questions, participation et lectorat nous sont précieux!
lecture recommandée
- Meilleurs outils de test de logiciels 2021 [Outils d'automatisation des tests QA]
- Test alpha et test bêta (un guide complet)
- Téléchargement de l'e-book 'Testing Primer'
- Didacticiel de test de l'entrepôt de données de test ETL (un guide complet)
- Types de tests logiciels: différents types de tests avec des détails
- Comment effectuer des tests ETL à l'aide de l'outil Informatica PowerCenter
- Test fonctionnel vs test non fonctionnel
- Questions et réponses d'entrevue de test ETL