top 25 functional testing interview questions
Questions et réponses aux entrevues sur les tests fonctionnels les plus fréquemment posées:
Comme son nom le définit, le test fonctionnel est le processus de test d'une application par rapport aux spécifications du document d'exigence.
Les tests fonctionnels peuvent être effectués manuellement ou par automatisation, mais chaque processus comprend le test de l'application en fournissant un ensemble d'entrées et en déterminant ou en vérifiant le résultat / la sortie en comparant le résultat réel avec les résultats attendus.
Les tests fonctionnels comportent différentes phases qui doivent être prises en compte lors des tests. Dans cet article, nous verrons plusieurs questions et réponses d'entrevue qui vous aideront à bien vous préparer.
Questions d'entrevue sur les tests fonctionnels les plus populaires
Q # 1) Qu'entendez-vous par le terme «tests fonctionnels»?
Répondre: Une technique de test de boîte noire, dans laquelle la fonctionnalité d'une application est testée pour générer la sortie souhaitée en fournissant certaines entrées, est appelée «test fonctionnel».
Le rôle des tests fonctionnels n'est pas seulement de valider le comportement de l'application conformément à la spécification du document d'exigence, mais également de vérifier si l'application est prête à être publiée dans l'environnement réel ou non.
Vous trouverez ci-dessous quelques techniques de test fonctionnel couramment utilisées:
- Test unitaire
- Test de fumée
- Test d'intégration
- Test du système
- Tests d'utilisation
- Les tests de régression
- Test d'acceptation des utilisateurs
Q # 2) Quelles sont les étapes importantes couvertes par les tests fonctionnels?
Répondre: Voici les étapes à suivre dans le cadre des tests fonctionnels:
- Comprendre la spécification du document d'exigence et éliminer les doutes et les requêtes sous la forme de commentaires de révision
- Ecrire les cas de test par rapport à la spécification d'exigence en gardant à l'esprit tous les scénarios à considérer pour tous les cas.
- Identifier les entrées de test et demander les données de test nécessaires pour exécuter les cas de test ainsi que pour vérifier la fonctionnalité de l'application.
- Déterminez les résultats réels selon les valeurs d'entrée à tester.
- Exécutez les cas de test qui déterminent si le comportement de l'application est comme prévu ou si un défaut s'est produit.
- Comparez le résultat réel et le résultat calculé pour connaître le résultat réel.
Q # 3) Expliquez la différence entre les tests fonctionnels et les tests non fonctionnels.
Répondre: La différence entre les tests fonctionnels et les tests non fonctionnels peut être expliquée comme suit:
Test fonctionel | Test non fonctionnel |
---|---|
Des tests fonctionnels sont effectués pour déterminer le comportement du système selon les exigences fonctionnelles du client. | Les tests non fonctionnels sont le processus permettant de déterminer les performances du système selon les attentes du client |
Les tests fonctionnels sont d'abord effectués à l'aide d'outils de test manuels et d'automatisation. | Les tests non fonctionnels sont effectués après des tests fonctionnels avec les outils efficaces requis. |
Il est facile d'effectuer des tests manuels car les exigences du client sont l'entrée dans les tests fonctionnels. | Il est difficile d'effectuer des tests manuels car l'évolutivité, la fiabilité, la vitesse et d'autres paramètres de performance sont entrés dans les tests non fonctionnels. |
Les tests fonctionnels sont des types suivants: • Tests unitaires • Test de fumée • Test de santé mentale • Test d'intégration • Test d'acceptation des utilisateurs • Les tests de régression | Les tests non fonctionnels sont des types suivants: • Test de performance • Test de charge, contrainte, volume • Tests de sécurité • Test de compatibilité |
Q # 4) En quoi «Build» est-il différent de «Release»?
Réponse: Construire est un fichier exécutable qui fait référence à la partie d'une application qui est remise à un testeur pour tester la fonctionnalité implémentée de l'application avec quelques corrections de bogues. La version peut être rejetée par l'équipe de test si elle ne passe pas la liste de contrôle critique qui contient les principales fonctionnalités de l'application.
Il peut y avoir plusieurs builds dans le cycle de test d'une application.
Libérer fait référence à l'application logicielle qui n'est plus en phase de test et une fois les tests et le développement terminés, l'application est remise au client. Une version est associée à plusieurs versions.
Q # 5) Expliquez le cycle des bogues.
Répondre: On dit que le bogue est une erreur indésirable, une faille, une erreur, etc. qui s'est produite dans l'application et l'empêche de fournir la sortie souhaitée. Lorsqu'un défaut ou un bogue est rencontré dans une application pendant le test, puis de la journalisation d'un défaut jusqu'à sa résolution, un bogue se déplace à travers un cycle de vie défini appelé Bug Lifecycle.
La figure ci-dessous vous donnera une idée du cycle de vie des bogues:
(image la source )
L'ensemble du processus se déroule au fur et à mesure qu'un problème ou un bogue est rencontré. Il est signalé / enregistré dans un outil de suivi des bogues suivant un format considérable. Ces bogues sont attribués au développeur et son statut est défini comme «Ouvert». Le développeur peut maintenant revoir le bogue, le reproduire à sa fin et commencer à travailler dessus.
Si le bogue est corrigé, le développeur change son statut en 'Corrigé' ou le statut peut être déplacé vers 'Besoin de plus d'informations', 'Ne résoudra pas', 'Impossible de reproduire', etc., dans d'autres cas. Le contrôle qualité effectue ensuite une régression, c'est-à-dire revérifier les bogues avec une action spécifique et répondre en conséquence.
Si le problème / bogue se comporte maintenant comme prévu, son statut est changé en Vérifié / Fermé sinon Rouvrir.
Q # 6) Enregistrez un statut de bogue avec sa description.
test de base de données questions et réponses d'entrevue
Répondre: Vous trouverez ci-dessous quelques statuts de bogue avec leurs descriptions:
- Nouveau: Lorsque le défaut ou le bogue est enregistré pour la première fois, il est dit comme Nouveau.
- Attribué: Une fois que le testeur a enregistré un bogue, son bogue est en cours d'examen par le responsable du testeur, puis il est attribué à l'équipe de développement correspondante.
- Ouvert: Le testeur enregistre un bogue à l'état ouvert et il reste à l'état ouvert jusqu'à ce que le développeur ait effectué une tâche sur ce bogue.
- Résolu / Fixé: Lorsqu'un développeur a résolu le bogue, c'est-à-dire que l'application produit maintenant la sortie souhaitée pour un problème particulier, le développeur change son statut en Résolu / Corrigé.
- Vérifié / fermé: Lorsqu'un développeur a changé le statut en résolu / corrigé, le testeur teste maintenant le problème à sa fin et s'il est résolu, il change le statut du bogue en 'Vérifié / Fermer'.
- Rouvrir: Si un testeur est capable de reproduire à nouveau le bogue, c'est-à-dire que le bogue existe toujours même après avoir été corrigé par le développeur, son statut est marqué comme Rouvrir.
- Pas un bug / invalide: Un bogue peut être marqué comme invalide ou non par le développeur lorsque le problème signalé est conforme à la fonctionnalité, mais est consigné en raison d'une mauvaise interprétation.
- Différé: Habituellement, lorsque le bogue est de priorité minimale pour la version et en cas de manque de temps, dans ce cas, ces bogues de priorité minimale sont reportés à la prochaine version.
- Ne peut pas reproduire: Si le développeur ne parvient pas à reproduire le bogue à sa fin en suivant les étapes mentionnées dans le problème.
Q # 7) Qu'est-ce que l'on appelle les tests pilotés par les données?
Répondre: Le test basé sur les données est la méthodologie dans laquelle une série de scripts de test contenant des cas de test sont exécutés à plusieurs reprises à l'aide de sources de données telles que feuille de calcul Excel, fichier XML, fichier CSV, base de données SQL pour les valeurs d'entrée et la sortie réelle est comparée à celle attendue lors de la vérification. traiter.
Par exemple, un studio de test est utilisé pour les tests basés sur les données.
Certains avantages des tests basés sur les données sont:
- Réutilisabilité.
- Répétabilité.
- Séparation des données de test de la logique de test.
- Le nombre de cas de test est réduit.
Q # 8) Quels sont les points importants à considérer lors de la rédaction de cas de test?
Répondre: On dit que l'écriture d'un cas de test est l'activité la plus importante du processus d'exécution de test qui nécessite des compétences en rédaction ainsi qu'une connaissance approfondie de l'application pour créer des cas de test efficaces et réutilisables.
Quelques points importants à prendre en compte lors de la rédaction de cas de test incluent:
- Il doit y avoir une compréhension claire des exigences du client avant de commencer à écrire les cas de test. Rien ne doit être supposé et tout doute concernant les exigences doit être dissipé.
- Chaque exigence doit être incluse sous la forme de cas de test et rien ne doit être omis. Habituellement, la matrice de traçabilité est maintenue pour garder un contrôle sur chaque mise en œuvre des exigences et achèvement des tests.
- Conformément aux spécifications du document d'exigence, chaque exigence fonctionnelle et non fonctionnelle, y compris l'interface de l'interface utilisateur, doit être couverte.
- Les cas de test doivent être vérifiés de temps en temps pour l'absence de répétition ou de redondance.
- La priorité est un facteur important qui doit être défini pour les cas de test lors de l'écriture. Cette priorité aide le testeur à tester d'abord l'application avec les cas de test de haute priorité qui incluent des fonctionnalités de base, puis le moyen et plus tard les cas de test de faible priorité.
- Pour une version particulière, les cas de test peuvent également être construits Sprint afin que le testeur, ainsi que le développeur, puissent analyser la qualité du produit en fonction de l'exécution du cas de test.
- La structure des cas de test doit être facilement comprise et doit être rédigée dans un langage simple. Les valeurs des données d'entrée pour les cas de test doivent être valides ainsi que dans une large plage.
Q # 9) Qu'est-ce que les tests d'automatisation?
Répondre: Les tests d'automatisation sont une méthodologie de test dans laquelle un outil d'automatisation est utilisé pour exécuter la suite de cas de test afin d'augmenter la couverture des tests ainsi que la vitesse d'exécution des tests. Les tests d'automatisation ne nécessitent aucune intervention humaine car ils exécutent des tests pré-scriptés et sont capables de rapporter et de comparer les résultats avec les tests précédents.
La répétabilité, la facilité d'utilisation, la précision et une plus grande cohérence sont quelques-uns des avantages des tests d'automatisation.
Certains outils de test d'automatisation sont répertoriés ci-dessous:
- Sélénium
- Tellure
- l'eau
- SAVON
Q # 10) Expliquez le terme test de résistance et test de charge.
Répondre:
Test de stress est une forme de test de performance où l'application est obligée de subir un effort ou un stress, c'est-à-dire l'exécution de l'application au-dessus du seuil de la pause pour déterminer le point où l'application se bloque. Cette condition survient généralement lorsqu'il y a trop d'utilisateurs et trop de données.
Les tests de résistance vérifient également la récupération de l'application lorsque la charge de travail est réduite.
Test de charge est une forme de test de performance où l'application est exécutée au-dessus de divers niveaux de charge pour surveiller les performances de pointe du serveur, le temps de réponse, le débit du serveur, etc. Grâce aux tests de charge, la stabilité, les performances et l'intégrité de l'application sont déterminées sous une charge système simultanée .
Q # 11) Qu'entendez-vous par test de volume?
Répondre: Le test de volume est une forme de test de performance qui détermine les niveaux de performance du débit du serveur et le temps de réponse lorsque des utilisateurs simultanés, ainsi qu'une charge de données importante de la base de données, sont placés sur le système / l'application soumis à des tests.
Q # 12) Quelles sont les différentes techniques de test utilisées dans les tests fonctionnels?
Répondre: Il existe deux techniques de test différentes qui sont utilisées dans les tests fonctionnels.
Ils peuvent être définis comme ci-dessous:
- Test basé sur les exigences: Cette forme de test fonctionnel est effectuée en hiérarchisant les exigences sur la base de critères de risque. Cela garantit également que tous les chemins de test critiques ont été inclus dans le processus de test.
- Tests basés sur les processus métier: Cette forme de test fonctionnel est effectuée du point de vue des processus métier. Les scénarios incluent la connaissance des processus métier pour effectuer des tests.
Q # 13) Qu'entendez-vous par tests exploratoires? Quand a-t-il lieu?
Répondre: Les tests exploratoires consistent à tester ou à explorer l'application sans suivre aucun calendrier ni aucune procédure. Lors des tests exploratoires, les testeurs ne suivent aucun modèle et utilisent leur réflexion originale et leurs idées diverses pour voir comment l'application fonctionne.
Suivre ce processus couvre même la plus petite partie de l'application et aide à trouver plus de problèmes / bogues que dans le processus de test de cas de test normal.
Des tests exploratoires sont généralement effectués dans les cas où:
- Il y a un testeur expérimenté dans l'équipe de test qui peut utiliser son expérience de test pour appliquer tous les meilleurs scénarios possibles.
- Tous les chemins critiques ont été couverts et les principaux cas de test sont préparés conformément aux spécifications d'exigence qui ont été exécutées.
- Il y a une application critique et aucun cas possible ne peut être manqué dans tous les cas.
- Un nouveau testeur est entré dans l'équipe, l'exploration de l'application les aidera à mieux comprendre et ils suivront leur propre esprit tout en exécutant n'importe quel scénario plutôt que de suivre le chemin indiqué dans le document d'exigence.
Q # 14) Pour toute application Web, quelles sont les fonctionnalités de connexion possibles qui devraient être testées?
Répondre: Vous trouverez ci-dessous les scénarios possibles qui peuvent être exécutés pour tester complètement la fonctionnalité de connexion de n'importe quelle application:
- Vérifiez les champs de saisie, c'est-à-dire le nom d'utilisateur et le mot de passe avec des valeurs valides et non valides.
- Essayez de saisir une adresse e-mail valide avec un mot de passe incorrect et entrez également une adresse e-mail et un mot de passe valides. Vérifiez le bon message d'erreur affiché.
- Entrez des informations d'identification valides et connectez-vous à l'application. Fermez et rouvrez le navigateur pour vérifier s'il est toujours connecté.
- Entrez dans l'application après vous être connecté, puis revenez à la page de connexion pour vérifier si l'utilisateur est à nouveau invité à se connecter ou non.
- Connectez-vous à partir d'un navigateur et ouvrez l'application à partir d'un autre navigateur pour vérifier si vous êtes également connecté à un autre navigateur ou non.
- Modifiez le mot de passe après vous être connecté à l'application, puis essayez de vous connecter avec cet ancien mot de passe.
Il existe également peu d'autres scénarios possibles qui peuvent être testés.
Q # 15) Expliquez les tests d'accessibilité et leur importance dans le scénario actuel.
Répondre: Les tests d'accessibilité sont une forme de tests d'utilisabilité où des tests sont effectués pour s'assurer que l'application peut être facilement gérée par des personnes handicapées telles que l'audition, le daltonisme, une faible visibilité, etc. Dans le scénario d'aujourd'hui, le Web a acquis une place majeure dans notre vie en sous forme de sites e-commerce, e-learning, e-paiements, etc.
Ainsi, pour mieux grandir dans la vie, tout le monde devrait pouvoir faire partie de la technologie, en particulier les personnes handicapées.
Voici quelques types de logiciels qui aident et aident les personnes handicapées à utiliser la technologie:
à quel point le c ++ est-il différent de java
- Logiciel de reconnaissance vocale
- Logiciel de lecture d'écran
- Logiciel d'agrandissement d'écran
- Clavier spécial
Q # 16) Qu'est-ce que les tests ad hoc?
Répondre: Les tests ad hoc, généralement appelés tests aléatoires, sont une forme de test qui ne suit aucun cas de test ou exigence de l'application. Les tests ad hoc sont essentiellement une activité non planifiée où une partie de l'application est vérifiée au hasard pour trouver des défauts.
Dans de tels cas, les défauts rencontrés sont très difficiles à reproduire car aucun cas de test prévu n'est suivi. Les tests ad hoc sont généralement effectués lorsque le temps est limité pour effectuer des tests élaborés.
Q # 17) Qu'est-ce que le partitionnement d'équivalence?
Répondre: Le partitionnement d'équivalence, également connu sous le nom de partitionnement de classe d'équivalence, est une forme de test de boîte noire où les données d'entrée sont divisées en classes de données. Ce processus est effectué afin de réduire le nombre de cas de test, mais en couvrant toujours l'exigence maximale.
La technique de partitionnement par équivalence est appliquée lorsque les valeurs des données d'entrée peuvent être divisées en plages. La plage des valeurs d'entrée est définie de telle manière qu'une seule condition de chaque partition de plage doit être testée en supposant que toutes les autres conditions de la même partition se comportent de la même manière pour le logiciel.
Par exemple: Pour identifier le taux d'intérêt selon le solde du compte, nous pouvons identifier la fourchette de montant du solde du compte qui rapporte un taux d'intérêt différent.
Q # 18) Expliquez l'analyse des valeurs limites.
Répondre: La méthode d'analyse des valeurs limites vérifie les valeurs limites des partitions de classe d'équivalence. L'analyse de la valeur limite est essentiellement une technique de test qui identifie les erreurs aux limites plutôt qu'à l'intérieur des valeurs de plage.
Par exemple , Un champ de saisie peut autoriser un minimum de 8 caractères et un maximum de 12 caractères, alors 8-12 est considéré comme la plage valide et 13 sont considérées comme la plage non valide. En conséquence, les cas de test sont écrits pour une valeur de partition valide, une valeur de limite exacte et une valeur de partition non valide.
Q # 19) Expliquez la différence entre la gravité et la priorité.
Répondre: Gravité des défauts est défini par le niveau ou le degré d'impact du défaut sur l'application sous test. Plus la gravité du défaut est élevée, plus l'impact sur l'application est important.
Voici les 4 classes dans lesquelles la gravité d'un défaut est classée:
- Critique
- Majeur
- Moyen
- Faible
Priorité des défauts définit l'ordre dans lequel le défaut doit être résolu en premier, c'est-à-dire que plus la priorité du défaut est élevée, cela signifie que l'application est inutilisable ou bloquée à un moment donné et que le défaut doit être résolu dès que possible.
Voici les 3 classes dans lesquelles une priorité de défaut est définie:
- Haut
- Moyen
- Faible
Q # 20) Quand effectuons-nous des tests de fumée?
Répondre: Le test de fumée est effectué sur l'application après réception de la construction. Le testeur teste généralement le chemin critique et non la fonctionnalité en profondeur pour s'assurer que la construction doit être acceptée pour des tests supplémentaires ou rejetée en cas d'application interrompue.
Une liste de contrôle de fumée contient généralement le chemin critique de l'application sans lequel une application est bloquée.
Q # 21) Que comprenez-vous par test de santé mentale?
Répondre: Le test d'intégrité est effectué après réception de la construction pour vérifier les nouvelles fonctionnalités / défauts à corriger. Dans cette forme de test, le but est de vérifier la fonctionnalité à peu près comme prévu et de déterminer si le bogue est corrigé ainsi que l'effet du bogue corrigé sur l'application testée.
Il ne sert à rien d'accepter la construction par le testeur et de perdre du temps si le test d'intégrité échoue.
Q # 22) Qu'entendez-vous par matrice de traçabilité des exigences?
Répondre: La matrice de traçabilité des exigences (RTM) est un outil permettant de suivre la couverture des exigences tout au long du processus de test.
Dans RTM, toutes les exigences sont classées selon leur développement au cours du sprint et leurs identifiants respectifs (mise en œuvre / amélioration de nouvelles fonctionnalités / problèmes précédents, etc.) sont conservés pour garder une trace que tout ce qui est mentionné dans le document d'exigence a été implémenté avant la publication de le produit.
Le RTM est créé dès la réception du document d'exigence et est conservé jusqu'à la sortie du produit.
Q # 23) Quels sont les facteurs à considérer dans les tests basés sur les risques?
Répondre: Par le test basé sur les risques d'un projet, il ne s'agit pas seulement de livrer un projet sans risque, mais l'objectif principal des tests basés sur les risques est d'atteindre le résultat du projet en appliquant les meilleures pratiques de gestion des risques.
Les principaux facteurs à prendre en compte dans les tests basés sur les risques sont les suivants:
- Identifier quand et comment mettre en œuvre des tests basés sur les risques sur une application appropriée.
- Identifier les mesures qui agissent bien pour détecter et gérer les risques dans les zones critiques de l'application.
- Pour atteindre le résultat du projet qui équilibre le risque avec la qualité et la fonctionnalité de l'application.
Q # 24) Faites la différence entre les tests de régression et les re-tests.
Répondre: La différence entre les tests de régression et les re-tests peut être expliquée comme suit:
Les tests de régression | Nouveau test |
---|---|
Les tests de régression sont la forme de tests effectués pour s'assurer que la mise en œuvre de toute nouvelle fonctionnalité ou de tout correctif n'affecte aucune autre partie ou fonctionnalité de l'application. | Le nouveau test est la forme de test de l'application après correction des défauts pour les cas de test qui ont échoué lors de la dernière exécution. |
Dans le cadre des tests de régression, les nouvelles modifications apportées à l'application ne doivent pas affecter les fonctionnalités existantes. | Dans le cadre du nouveau test, une vérification des défauts est effectuée. |
En fonction des exigences du projet, les tests de régression peuvent être effectués en parallèle avec un nouveau test. | Un nouveau test est effectué avant le test de régression en raison de sa haute priorité. |
Également connu sous le nom de test générique et effectué pour les cas de test réussis. | Également connu sous le nom de test planifié et n'est effectué que pour les cas de test ayant échoué. |
Comme les tests manuels peuvent prendre du temps et être coûteux, l'automatisation peut être effectuée pour les tests de régression. | L'automatisation ne peut pas être effectuée pour un nouveau test. |
Q # 25) Expliquez les tests d'acceptation des utilisateurs.
Répondre: Les tests d'acceptation par l'utilisateur sont généralement effectués après que le produit a été minutieusement testé. Dans cette forme de test, les utilisateurs de logiciels ou, par exemple, le client, utilisent eux-mêmes l'application pour s'assurer que tout fonctionne selon les exigences et parfaitement dans le scénario du monde réel.
UAT est également connu sous le nom de test utilisateur final.
Conclusion
À travers cet article, j'ai essayé d'expliquer chaque sujet des tests fonctionnels, afin que toute personne qui se prépare à l'entretien puisse facilement comprendre le sujet et s'en souvenir également.
Ces questions et réponses d'entrevue de test fonctionnel vous guideront pour terminer avec succès tout entretien en toute confiance.
Nous vous souhaitons beaucoup de succès.
J'espère que ces questions et réponses d'entrevue sur les tests fonctionnels vous aideront à un moment donné de votre carrière.
lecture recommandée
- Test fonctionnel vs test non fonctionnel
- 16 nouvelles fonctionnalités de l'outil Micro Focus UFT (Unified Functional Testing) - QTP vs UFT
- 5 meilleurs outils alternatifs de test fonctionnel unifié HP (UFT)
- Un guide complet de tests non fonctionnels pour les débutants
- Un guide étape par étape de Jubula - L'outil de test fonctionnel automatisé Open Source
- Test fonctionnel vs test de performance: doit-il être fait simultanément?
- Guide de test fonctionnel complet avec ses types et son exemple
- Tutoriel Parrot QA: Revue de l'outil de test fonctionnel Cross Browser
- Spock pour l'intégration et les tests fonctionnels avec le sélénium
- Les différences entre les tests unitaires, les tests d'intégration et les tests fonctionnels
- Top 25 des questions et réponses d'entrevue de test fonctionnel
- Top 30 des outils de test fonctionnel en 2021