Top 100 des questions et réponses d'entrevue sur le sélénium

2 janvier 2022

En génie logiciel, les tests constituent une partie importante du cycle de vie du développement. Le test des applications peut être effectué manuellement ou par automatisation. Le sélénium a été introduit pour la première fois par Jason Huggins en 2004 pour un usage interne à la société ThoughtWorks. Il a été le premier à utiliser le Selenium RC (télécommande). Selenium RC était un logiciel open-source pour cette année particulière. Cependant, Selenium RC est désormais remplacé par les pilotes Selenium Web.

Sélénium est un excellent point de départ car il s'agit d'un outil open source et facile à utiliser. L'objectif devrait être de couvrir toutes les questions et réponses possibles de l'entretien avec le sélénium. Selenium est un outil d'automatisation utilisé par les testeurs du monde entier pour vérifier l'état de préparation de l'application.

Voici quelques questions d'entrevue au sélénium auxquelles on peut être confronté. Parcourir cette liste des principales questions et réponses des entretiens sur le sélénium vous aidera.



Référez-vous à notre questions d'entretien sur les tests de logiciels qui vous aiderait à rafraîchir vos connaissances sur les questions générales de test de logiciels.

Table des matières

Quelques conseils de base pour faire face aux questions d'entrevue Selenium

  • Rendez vos fondations solides.
  • Passez en revue toutes les questions et réponses de l'entretien couvertes ici
  • Utilisez le sélénium pratiquement
  • Utilisez des exemples de codes pour étayer vos réponses aux questions d'entretien Selenium.

Questions et réponses de l'entretien d'embauche avec Selenium

1. Qu'est-ce que les tests d'automatisation ?

Le mot clé ici est l'automatisation. Permettre à quelque chose de fonctionner tout seul, avec une intervention minimale, s'appelle l'automatisation. Tout outil qui aide à la validation d'un cas de test est considéré comme un outil d'automatisation. Selenium est un exemple d'outil d'automatisation open source pour tester des applications Web.

2. Quels sont les avantages des tests automatisés ?

  1. Gain de temps et de ressources
  2. Le processus est maintenant plus fluide
  3. La gestion des données est simplifiée
  4. Il peut stocker tous les cas de test en un seul endroit
  5. La gestion des défauts est maintenant plus facile

3. Quels sont les avantages de Test Automation Framework

Test Automation Framework n'est rien d'autre qu'un espace où les testeurs peuvent créer leurs cas de test et les exécuter. Selenium est un exemple de cadre d'automatisation des tests utilisé pour les applications Web. Un cadre de développement basé sur le comportement peut faire beaucoup dans l'ensemble du flux de test. Voici quelques avantages du cadre d'automatisation des tests.

  • L'efficacité des tests augmente
  • Plus de cas de test sont couverts
  • Le temps est réduit
  • Le coût pour l'entreprise est moindre
  • Il n'y a pas de doublons dans un scénario de test
  • C'est un lieu de référence unique
  • Un outil de test open source comme Selenium est également gratuit

4. Qu'est-ce que le sélénium ? De quoi est-il composé ?

C'est l'une des questions d'entretien les plus élémentaires posées lors d'un entretien au sélénium. Un entretien avec un pilote Web au sélénium est incomplet sans cette question.

Définition de Selenium (ou Selenium IDE): Il s'agit d'un outil de test d'automatisation qui aide à tester les applications Web. Voici quelques éléments clés du sélénium. Selenium implémente le cadre de développement basé sur le comportement.

Voir également Top 100 des questions et réponses d'entrevue JavaScript
IDE au séléniumGrille de séléniumPilote Web Selenium/ Selenium RC
IDE est l'environnement de développement intégré, c'est là que l'utilisateur interagit avec l'outil. Il s'agit d'un cadre de test basé sur les données. Un référentiel d'objets est créé pour faciliter les données.

Selenium IDE ou Selenium Integrated Development Environment est disponible sous forme de plugin pour divers navigateurs Web pour aider à tester les applications Web.
Une grille de sélénium aide à diviser les cas de test parallèles. Cela aide à réduire le temps de test.Le sélénium RC est maintenant rarement utilisé. Le pilote Web a maintenant remplacé les projets Selenium RC. Il existe un groupe d'API qui sont utilisées pour les tests, elles font partie du Webdriver. Cela permettra la création de scripts utilisant l'un des langages de programmation disponibles aujourd'hui.





5. Quand utilisez-vous Selenium Grid ?

Lorsque vous vous préparez pour les questions d'entretien sur le sélénium, assurez-vous de citer un exemple de vos projets précédents.

Selenium utilise un framework de développement basé sur le comportement. Comme mentionné, la grille de sélénium permet de faire fonctionner divers tests en parallèle dans différentes machines. Cependant, il est utilisé dans des cas spécifiques.

  • Exécutez des scénarios de test sur différentes machines
  • En cas de besoin de gagner du temps

6. Qu'est-ce qu'un hub dans une grille Selenium ?

image 617dc9fc978d4

Structure de base de la grille de sélénium

Hub est le point le plus central de la grille IDE au sélénium. Une communication serveur-client est active pendant le test. C'est ainsi que fonctionne une simple grille de sélénium.

7. Qu'est-ce qu'un nœud dans Selenium Grid ?

Toute machine connectée au hub de la grille est appelée un nœud. Généralement, chaque navigateur utilisé sera noté comme un nœud.

8. Quels sont les types d'API WebDriver disponibles dans Selenium ?

Cinq types d'API WebDriver disponibles dans l'IDE Selenium.

  • Domaine
  • Synchronisation
  • La navigation
  • Interrogatoire
  • Manipulation

9. Quelle implémentation de WebDriver prétend être la plus rapide ?

Le pilote HTMLUnit fonctionne avec des requêtes http, ce qui le rend plus rapide par rapport aux autres qui existent dans le référentiel actuel du pilote Web.

10. Quels sont les langages de programmation pris en charge par Selenium WebDriver ?

Pilote Web Selenium

Le tout nouveau Selenium 2.0 peut prendre en charge un large éventail de langages de programmation tels que - Ruby, Python, C # et Java.

11. Quelle langue n'est pas prise en charge par Selenium ?

Des langages comme Perl et PHP ont été abandonnés dans Selenium 2.0.

12. Quels sont les systèmes d'exploitation pris en charge par Selenium WebDriver ?

Les systèmes d'exploitation suivants sont compatibles avec le Webdriver dans Selenium IDE. Ceux-ci ont également été pris en charge par Selenium RC.

  • MacOS
  • les fenêtres
  • Solaris
  • Linux

13. Quels sont les types de tests qui peuvent être pris en charge par Selenium ?

Voici les types de tests qui peuvent être couverts à l'aide de Selenium

  • Tests d'acceptation
  • Test fonctionel
  • Test de performance
  • Les tests de régression

Questions et réponses de l'entretien d'embauche avec Selenium

14. Combien de paramètres les commandes Selenium peuvent-elles avoir au minimum ?

Selenium IDE autorise jusqu'à deux paramètres à la fois. La cible et la valeur ne sont pas toujours utilisées dans tous les cas. Il doit être mis en œuvre uniquement en cas de besoin.

15. Quels sont les frameworks open source pris en charge par Selenium WebDriver ?

Voici une liste des 5 meilleurs frameworks open source que vous pouvez mentionner dans votre interview au sélénium.

  1. Cadre robotique
  2. Fou
  3. catalan
  4. Carine
  5. Appium

16. Quels sont les localisateurs disponibles dans Selenium ?

Lors de l'utilisation de l'IDE Selenium, vous devez vous familiariser avec certains localisateurs de base. Cette question revient régulièrement dans les questions d'entretien.

  • HTML : find_element_by_tag_name
  • Identifiant CSS : find_element_by_id
  • Nom de la classe CSS : find_element_by_class_name
  • Attribut de nom : find_element_by_name
  • Structure DOM : find_element_by_xpath

17. Lorsque vous utilisez ces localisateurs ID, nom, XPath ou sélecteur CSS ?

Il est important de connaître tous les localisateurs importants sur l'IDE Selenium. En fonction du cas de test et de son objectif, vous pouvez utiliser le localisateur donné. L'ID est utilisé pour trouver les éléments Web d'entrée de la page Web. Le nom est un autre champ d'une page Web où l'utilisateur saisit le nom. L'utilisation de l'un des autres éléments du sélecteur CSS peut également être implémentée.

18. Expliquez la différence entre le chemin absolu et le chemin relatif ?

Chemin absoluChemin relatif
Il donne à l'utilisateur le chemin complet du premier au dernier élémentIl y a un référencement utilisé à l'aide du premier élément pour naviguer jusqu'à l'élément souhaité

19. Quelle est la différence entre Assert et Verify dans Selenium ?

Confirmez et vérifiez les commandes qui ont des fonctionnalités différentes mais similaires. Notez les différences mentionnées dans le tableau ci-dessous.

AffirmerVérifier
Vérifiez les conditions vrai-faux. Cela fonctionne d'une manière organigramme. Où vrai mène à certaines étapes et faux mène à la résiliation.
Il y a deux assertions - dures et douces
Vérifiez les conditions vrai-faux. Cela fonctionne d'une manière organigramme. Où vrai mène à certaines étapes et faux mène à un autre ensemble d'étapes.
Un seul type de vérification existe

20. Qu'est-ce que Soft Assert et Hard Assert dans Selenium ?

Assertion douceAssertion dure
Un échec entraîne une notification immédiate à l'utilisateur. Passe ensuite au cas de test suivant dans la suite de tests
Une exception est levée et gérée par un PASS
N'indique aucune panne. Passe rapidement au cas de test suivant dans la suite de tests
Il affiche les erreurs après chaque exécution.

21. Quelle est la différence entre les méthodes setSpeed() et sleep() ?

setSpeed()sommeil()
Cette méthode s'exécutera pendant le nombre de secondes/millisecondes donné. Le délai est exécuté après l'opération. Par ex. sélénium.setSpeed(5000)Cette méthode n'est déclenchée qu'une fois appelée. Par exemple thread.sleep()

22. Quels sont les points de vérification disponibles dans Selenium ?

Les commandes de vérification et d'affirmation de Selenese peuvent être utilisées comme points de vérification dans l'IDE Selenium. Voici quelques endroits où l'on pourrait utiliser des points de vérification

  • Vérifier le bon titre de page
  • Vérifier le texte saisi
  • Voir si les boîtes fonctionnent sur la page Web

23. Quelle est la différence entre / et // ?

Lors de l'écriture du script de test pour les tests de sélénium, certaines notations sont utilisées pour communiquer avec les machines dans le x-path.

Barre oblique unique /Double barre oblique //
Une barre oblique unique est utilisée pour créer le chemin absolu. Ceci est utilisé pour créer XPath au début du nœudUne double barre oblique est utilisée pour créer un chemin relatif. Cela créerait le XPath à n'importe quel point du nœud.

24. Comment lancer un navigateur avec Selenium WebDriver ?

Suivez les étapes ci-dessous pour comprendre comment utiliser le WebDriver.

Étape 1 : Sélectionnez le dossier src et créez une nouvelle classe

Étape 2 : Ouvrez le fichier suivant URL

Étape 3 : Téléchargez le Selenium WebDriver en fonction du navigateur Web que vous utilisez

Étape 4 : Extraire le Zip *: français dossier téléchargé à l'étape précédente

Étape 5 : Exécutez le code suivant

Pilote WebDriver=nouveau ChromeDriver(); // vous pouvez également utiliser le pilote Webdriver = new FirefoxDriver()

Étape 6 : Vous pouvez maintenant taper le code approprié pour le navigateur dans l'IDE, puis vous êtes prêt à partir.

25. Pouvez-vous parcourir la page Web dans Selenium ?

Cela est possible grâce au Selenium WebDriver qui donne des commandes de navigation de base. L'utilisateur peut saisir le Selenium WebDriver pour naviguer d'une page à l'autre.

Questions et réponses de l'entretien d'embauche avec Selenium

26. Comment envoyer la touche ALT/SHIFT/CONTROL dans Selenium WebDriver ?

Lors de l'utilisation de ces trois clés dans Selenium WebDriver, nous devons envoyer les commandes via des méthodes. En règle générale, on utiliserait - keyDown (clé de modification) et keyUP (clé de modification). Ici, la partie des touches de modification doit être remplacée par ALT, SHIFT ou CONTROL.

Par exemple, keyDown(keys.ALT) ou keyUP(Keys.SHIFT)

27. Comment faire des captures d'écran dans WebDriver ?

Un élément clé des outils de test d'automatisation est la capacité à fournir suffisamment d'informations aux testeurs pour le débogage. Par conséquent, la capture d'écran est une méthode efficace.

L'exemple de code suivant vous aidera à capturer les captures d'écran dans Selenium Webdriver

|__+_|

28. Comment définir la taille de la fenêtre du navigateur à l'aide de Selenium ?

Pour définir la taille, il existe deux méthodes différentes.

  1. obtenirTaille()
  2. Exécuteur Javascript

29. Quels sont les différents types de commandes de navigation dans Selenium ?

Les commandes suivantes vous aideront à naviguer dans la page Web.

  1. naviguer.back()
  2. naviguer.en avant()
  3. naviguer.refresh()
  4. aller vers()

30. Quelle est la différence entre les méthodes driver.close() et driver.quit() ?

Pilote.close()Pilote.quit()
Ferme uniquement le navigateur utiliséFerme tous les navigateurs

31. Comment pouvez-vous trouver des liens brisés dans une page à l'aide de Selenium WebDriver ?

Voici les étapes que vous pouvez exécuter à l'aide de Selenium WebDriver pour identifier les liens rompus.

Un code écrit avec la logique ci-dessus aidera à identifier les liens brisés.

32. Est-il possible d'automatiser le captcha avec Selenium ?

Non, nous ne pouvons pas automatiser le captcha en utilisant Selenium seul.

33. Énumérez quelques scénarios que nous ne pouvons pas automatiser à l'aide de Selenium WebDriver ?

Voici quelques situations où cela échoue.

  1. Captcha automatique
  2. Entrée d'OTP
  3. Comparaison bitmap
  4. Impossible de lire le code-barres ou le code QR

34. Quels sont les défis et les limites de Selenium WebDriver ?

Dans votre entretien au sélénium, cela pourrait être une question importante. Voici les défis et les limites.

  1. Il est difficile de gérer les services basés sur Windows et les applications mobiles
  2. Les rapports et l'analyse sont moins
  3. Ne gère pas les éléments dynamiques
  4. Impossible de donner le temps de rendu de la page
  5. Ne fonctionne pas avec les fenêtres contextuelles basées sur le navigateur
  6. Impossible de lire les captchas, les codes-barres ou les OTP
Voir également Top 100 des questions et réponses d'entrevue JavaScript

35. Quels sont les types d'attentes disponibles dans Webdriver ?

  • Attentes implicites
  • Attentes explicites
  • Attente fluide

36. Quelle est la différence entre Page Object Model (POM) et Page Factory ?

POM ou modèle d'objet de page est utilisé pour un élément d'interface utilisateur Web dans ce cadre de test basé sur les données. Il aide à créer un référentiel d'objets. Cela aide à se débarrasser des codes répétés et aide à garder le code bien rangé.

37. Comment gérer les appels Ajax dans Selenium WebDriver ?

Voici quelques conseils pour gérer les appels Ajax dans Selenium Webdriver

  1. Ajouter des attentes implicites
  2. Ajouter des attentes explicites
  3. Ajoutez des temps d'attente fluides
  4. Ajouter Webdriver attend
  5. Utilisez thread.sleep

38. Qu'est-ce que JavaScriptExecutor et dans quels cas JavaScriptExecutor aidera-t-il l'automatisation de Selenium ?

JavaScriptExecutor - Afin d'exécuter JavaScript, les Webdrivers ont une interface qui facilite cette fonction.

Exécuteur Javascript

Utilisation de JavaScript dans Selenium

Les localisateurs sont actifs et peuvent également être utilisés pour une navigation complexe. Cependant, si quelqu'un ne peut pas les utiliser, JavaScriptExecutor est une excellente option. Les personnes ayant une compréhension de JavaScript peuvent facilement l'utiliser pour écrire des extraits de code simples. Certaines méthodes sont disponibles pour les utilisateurs

  1. exécuterAsyncScript
  2. exécuterScript

39. Comment créez-vous un référentiel d'objets dans votre projet ?

Comme son nom l'indique, un référentiel d'objets en termes simples est un endroit où les objets sont stockés. Les localisateurs sont des objets primaires. Il n'y a pas de référentiels intégrés disponibles pour l'utilisateur. L'utilisateur doit le construire lui-même. Il existe deux nombreux types qui peuvent être créés sur le WebDriver - en utilisant le fichier de propriétés et en utilisant le fichier xml.

Voici les étapes qui vous aideront à créer le référentiel d'objets.

Étape 1 : Utilisez eclipse pour lancer un projet Java. Créer un nouveau projet

Étape 2 : Ajoutez les paramètres par défaut pour un nouveau projet

Étape 3: Nommez le référentiel sous ObjectRepositoryDemo (nom du projet) - 'application.properties'

Étape 4 : Commencer à stocker les données de test dans ce fichier de propriétés

40. Pouvez-vous utiliser Selenium pour les tests d'API Rest ou les tests de services Web ?

Très souvent dans un entretien au sélénium, cette question est posée à plusieurs reprises pour tromper le candidat. C'est une question logique simple qui a une réponse directe, c'est-à-dire non !

Cet outil de test d'automatisation ne fonctionne que sur les applications Web. Pour les tests d'API ou les tests de services Web, d'autres outils comme Postman ou SOAPUI sont utilisés.

Questions et réponses de l'entretien d'embauche avec Selenium

41. Comment lisez-vous les données de test à partir de feuilles Excel ?

Afin de lire les données de test à partir d'Excel, il doit être utilisé avec Apache POI (Poor obfuscation implementation).

42. Comment trouver plus d'un Web Element dans une liste ?

Utilisez la méthode findElement() dans le Webdriver. Cela aidera à identifier plus d'un élément sur la page Web.

43. Comment gérer les éléments cachés dans Selenium WebDriver ?

Il lèvera automatiquement une exception (ElementNotVisibleException). Il y a un besoin pour un exécuteur Javascript qui a besoin d'un script supplémentaire pour être exécuté. Cela gérera automatiquement toutes les exceptions et identifiera les éléments cachés.

44. Comment pouvons-nous gérer les pop-ups basés sur des fenêtres dans Selenium ?

driver.getWindowHandles() se chargera de prendre en charge les pop-ups basés sur Windows au moment de l'exécution des scripts de test. Cela peut également aider à basculer entre les fenêtres.

45. Comment passer la souris sur un élément Web à l'aide de WebDriver ?

La syntaxe de base de l'écriture d'une fonctionnalité de survol de la souris est :

|__+_|

46. ​​Comment sélectionner les éléments déroulants dans Selenium WebDriver ?

Il existe des méthodes qui peuvent aider à choisir une valeur dans la liste déroulante statique. Toutes ces méthodes se comportent comme des fonctions get(). Utilisez-les sous la fonction void main string args.

  1. selectByVisibleText(String args)
  2. selectByIndex(String args)
  3. selectByValue(String args)

47. Pourquoi devriez-vous utiliser Selenium pour les tests d'automatisation ?

Lorsque cette question est posée lors de votre entretien au sélénium, envisagez d'énumérer les avantages. Voici quelques conseils que vous pouvez partager avec l'intervieweur.

  1. C'est un logiciel gratuit.
  2. Le support de langage de programmation diversifié.
  3. Fonctionne avec différents systèmes d'exploitation.
  4. Active les plugins dans tous les navigateurs (internet explorer, chrome)
  5. Les tests peuvent être effectués à l'aide de différents types de concentrateurs ou de machines.
  6. Documents accessibles.
  7. East pour écrire un script de test.

48. Expliquez la différence entre MaxSessions Vs. Propriétés MaxInstances dans Selenium Grid ?

MaxSessionsMaxInstances
Indique le nombre de navigateurs (Internet Explorer, Chrome).Indique le nombre d'instances de navigateur présentes à cet instant.

49. Comment supprimer les cookies dans Selenium ?

Vous pouvez utiliser une fonction comme – driver.manage().deleteAllCookies().

50. Comment récupérer l'URL des pages actuelles dans Selenium ?

Utilisez la méthode getCurrentURL() pour vous aider avec la dernière URL consultée.

51. Que se passe-t-il si j'exécute cette commande – Driver.get (www.softwaretesttips.com) ;?

Ici, les protocoles http doivent être utilisés. Par conséquent, cette commande ne sera pas exécutée ou affichera un message d'erreur. Assurez-vous de toujours inclure http ou https dans votre script de test avant l'exécution du test.

52. Selenium Server est-il nécessaire pour exécuter les scripts WebDriver ?

L'intérêt d'avoir WebDriver est d'exécuter les scripts pour se connecter au navigateur, il n'est donc pas nécessaire d'avoir un serveur Selenium explicite pour exécuter le script de test. Le serveur Selenium est rarement utilisé.

53. Comment mettre en pause l'exécution d'un test pendant 5 secondes à un moment précis ?

Ici, l'attente implicite ou l'attente explicite fonctionnera. thread.sleep(5000) - notez que c'est 5000 ms. Comme tout le temps est noté en millisecondes.

54. Comment appuyer sur la touche ENTER dans la zone de texte dans Selenium WebDriver ?

Chaque fois que des touches doivent être enfoncées, un code doit être écrit dans n'importe quel langage de programmation connu. Utilisez-le sous la fonction principale de vide public. Ceux-ci sont utilisés dans un cadre de test basé sur des modules. Les scripts de test suivants peuvent être utilisés.

driver.findElement(By.id(Value)).sendKeys(Keys.ENTER);

Autres clés :-

driver.findElement(By.id(Valeur)).sendKeys(Keys.SPACE)

driver.findElement(By.id(Valeur)).sendKeys(Keys.SHIFT)

driver.findElement(By.id(Valeur)).sendKeys(Keys.ALT)

driver.findElement(By.id(Valeur)).sendKeys(Keys.CTRL)

55. Comment soumettre un formulaire en utilisant Selenium WebDriver ?

Voici les méthodes qui doivent être utilisées pour la soumission de formulaire dans le script de test. Implémenté dans le cadre de test de l'architecture de la bibliothèque.

  • use.click()
  • use.submit()

56. Comment obtenir une valeur d'attribut en utilisant Selenium WebDriver ?

Les attributs ici font référence aux éléments HTML qui sont capturés lors de la création de scripts de test pilotés par mots clés dans Selenium. Afin d'adresser les attributs dans Selenium, il existe une méthode appelée getAttribute() qui reconnaît les attributs et les récupère pour vous.

57. Comment obtenir des éléments de texte dans une page Web en utilisant Selenium ?

Selenium a suffisamment de méthodes pour chaque fonctionnalité. Le getText() aidera à récupérer le texte requis pour un élément donné. Les éléments de HTML peuvent être facilement récupérés et utilisés par l'outil Selenium.

58. Comment effacer le texte dans la zone de texte à l'aide de Selenium WebDriver ?

Au cas où, lors de votre script, vous n'auriez pas effacé le texte dans la zone de texte. Il existe une méthode clear() qui peut être utilisée pour effacer tout le texte à l'aide du pilote Web. Il s'agit également d'une fonction prédéfinie dans le Webdriver.

59. Comment se connecter à n'importe quel site s'il affiche une fenêtre contextuelle d'authentification pour le nom d'utilisateur et le mot de passe ?

Bien que Selenium ne puisse pas gérer de telles situations, il existe des solutions de contournement simples que l'on peut utiliser lors de la création des scripts de test.

  1. Transmettez les informations d'identification dans l'URL
  2. Utiliser un script javascript ou AutoIT
  3. Utiliser la fonction d'alertes dans le pilote Web

60. Que se passe-t-il si vous mélangez Thread.Sleep et WebDriver Waits dans un script ?

L'attente implicite et l'attente explicite peuvent être évoquées pour une application sous test. Une fonction d'attente - attente explicite ou attente implicite permet aux scripts de terminer l'exécution. Quand le attend comme Thread. Les attentes de veille et de pilote Web se confondent, le temps d'exécution du test augmente et ralentit l'ensemble du système lors de l'exécution des scripts de test.

61. Qu'est-ce que Fluent Wait In Selenium WebDriver ?

Lorsqu'une grande quantité de temps doit être utilisée pour attendre qu'une condition particulière apparaisse, l'attente fluide est utilisée dans de tels cas dans les scripts de test. Cela se produit généralement avant qu'une exception telle que ElementNotVisibleException ne soit levée.

62. Comment pouvez-vous préparer un rapport HTML personnalisé dans TestNG en utilisant le framework de test hybride ?

Les résultats sont stockés dans un fichier nommé index.html. Ce fichier est acheminé vers des fichiers HTML qui contiennent le plan de l'application testée. Vous pouvez utiliser les écouteurs et les reporters dans des scripts de test basés sur des mots-clés.

  1. Auditeurs : org.testng.ITestListener (nom de l'interface)
  2. Reporters : org.testng.IReporter

63. Qu'entend-on par Selenèse ? Expliquer les types de commandes Selenium

Selenese est un terme utilisé pour appeler les commandes Selenium. Dans les interviews au sélénium, mentionnez certaines des commandes de sélénium.

Sélénèse
  1. Actions
CommanderLa description
ouvrir le lien)La demande d'URL est déclenchée et permet d'accéder à la page Web
type(localisateur,valeur)Une entrée de champ est prise via cette commande
Cliquez sur (localisateur)Un survol de la souris clique sur un bouton radio ou une case à cocher
  1. Accessoires
CommanderLa description
storeTitle (variableName)Récupère le titre de la page
storeText(localisateur, variableName)Récupère le texte d'un élément
storeValue(locator, variableName)Récupère la valeur d'un champ
  1. Assertions

C'est là que les commandes d'assertion et de vérification sont utilisées.

CommanderLa description
vérifierSelected(selectLocator, optionLocator)Vérifie l'option déroulante sélectionnée
vérifierAlerte(motif)Vérifie les textes d'alerte
vérifierTouslesBoutons(motif)Vérifier les boutons sélectionnés

64. Comment pouvez-vous réaliser des tests de base de données en utilisant Selenium ?

Il est à noter que les tests Selenium sont uniquement compatibles avec les applications Web. Les tests de base de données ne sont pas directement réalisables par Selenium. Nous pouvons utiliser des outils tiers comme JDBS (Java Database Connectivity). C'est un SQL API basée sur qui permet la capture de requêtes SQL. Il s'agit d'un processus simple en trois étapes que l'on peut utiliser pour vérifier l'état de préparation des requêtes de base de données.

Test de base de données avec Selenium

65. Quelles sont les fonctionnalités de TesTNG ?

TestTNG possède des fonctionnalités intéressantes qui le rendent approprié pour être utilisé comme un autre outil d'automatisation.

  1. Peut comprendre les annotations
  2. Java est le langage de programmation de base utilisé
  3. Peut travailler avec des classes intégrées pendant les exécutions de test
  4. Des séparations de test peuvent être effectuées
  5. C'est un plug-in facile
  6. Le test multi-thread est possible
Voir également Top 100 des questions et réponses d'entrevue JavaScript

66. Comment gérer STALEELEMENTREFERENCEEXCEPTION ?

StaleElementReferenceException se produit lors de la réutilisation du même élément Web. Voici les façons dont on peut les gérer.

  1. Page Factory Model : Il fait ce qu'on appelle l'initialisation paresseuse des éléments Web. L'initialisation différée fait référence au ralentissement du temps d'initialisation.
  2. Déplacement de l'élément Web : Prenez soin de cela lors de l'écriture de vos scripts en premier lieu.

67. Quelles sont les différentes exceptions observées dans Selenium Webdriver ?

  • ElementNotVisibleException
  • ElementNotSelectableException
  • NoSuchElementException
  • NoSuchFrameException
  • StaleElementReferenceExceptionStaleElementReferenceException
  • SessionNotFoundExceptionSessionNotFoundException
  • TimeoutException
  • WebDriverException

68. Quels sont les différents types d'écouteurs TestNG dans Selenium ?

  1. MethodInterceptor
  2. AnnotationTransformateur
  3. ExecutionListener
  4. Accrochable
  5. InvokedMethodListenerInvokedMethodListenerInvokedMethodListener
  6. Journaliste
  7. Configurable
  8. TestListener

69. Comment sauter une méthode ou un bloc de code dans TestNG ?

Le moyen simple d'activer cela en définissant les paramètres comme faux. Voici une commande ou un code que vous pouvez implémenter.

@Test(activé=faux)

SkipException() est également utilisé dans certains cas.

70. Que sont les fournisseurs de données dans TesTNG ?

Les fournisseurs de données s'occupent des exigences en matière de données de test dans TestNG. Cela nous aide à invoquer des méthodes et des scénarios en transmettant les arguments requis pour un processus factice lors de l'exécution du test. L'héritage peut également être utilisé pour les fournisseurs de données dans TesTNG.

71. Qu'est-ce que le paramétrage dans TesTNG ? Comment passer des paramètres en utilisant TesTNG ?

La paramétrisation n'est rien d'autre que l'attribution d'une variable à prendre dans une valeur telle que requise pour l'application testée. Cela permet de recréer le flux réel dans la page Web.

Les paramètres peuvent transmettre la valeur capturée tout en réitérant les cas de test. Dans un XML, les paramètres souhaités peuvent être remplacés ou transmis à l'aide d'une simple annotation - @parametername (nom d'utilisateur, mot de passe). Cela permet aux valeurs d'être transmises dynamiquement.

72. Quelle est la signification de testng.xml ?

Voici quelques utilisations clés d'un fichier TestNG.xml : -

  • Les cas de test sont exécutés collectivement
  • Flexibilité avec les méthodes de test
  • Plusieurs cas peuvent être déclenchés à partir d'un seul point
  • A une liste de dossiers, de classes et de méthodes en un seul endroit
  • Les exécutions parallèles sont désormais possibles
  • La documentation de tous les scénarios de test aide aux tests de régression

73. Mentionnez quelques-uns des outils populaires utilisés pour les tests d'automatisation

  1. Ranorex
  2. TestProjet
  3. Kobiton
  4. Aubergine

74. Pourquoi les testeurs choisissent-ils Selenium plutôt que QTP ?

Selon le tableau, Selenium possède des fonctionnalités plus polyvalentes.

CaractéristiquesSéléniumQTP
LogicielSe compose d'APIApplication basée sur le bureau
La flexibilitéTous les navigateurs (internet explorer, chrome), OS, Languesgérer le système d'exploitation basé sur Windows
LicenceLibérerPayé
EnvironnementIntégration avec des outils et applications tiersSeul le plugin Oracle est activé.

75. Qu'est-ce que l'intégration continue ?

L'intégration continue est une pratique de développement utilisée par les ingénieurs logiciels. L'objectif est de compiler le code et de le partager dans le référentiel autant de fois que possible. Ce qui permettra aux testeurs d'exécuter le dernier code après chaque modification implémentée. Cela aide les testeurs à identifier les défauts. Les défauts sont également repris par les développeurs immédiatement depuis le pipeline.

76. Nommez quelques outils CI disponibles sur le marché

Voici quelques outils CI qui sont actuellement utilisés sur le marché.

Nom de l'outilCaractéristiques
JenkinsL'interface est conviviale
Il est facile d'intégrer divers environnements de test et de production
Bon pour suivi des performances de l'application en temps réel égalementBambouPeut donner jusqu'à 100 machines distantes
Exécution du script de test par lots
Les contrôles et les autorisations de l'environnement sont facilement maintenusIntégration de CircleCIEasy avec GitHub
Mises à jour et alertes activées dans l'outil
Personnalisation disponible à des fins de test

77. Quels sont les différents types d'annotations utilisées dans Selenium ? Expliquez l'annotation JUnit liée à Selenium.

Voici quelques annotations utilisées dans Selenium (classées par ordre d'importance)

  • @BeforeSuite
  • @AvantTest
  • @AprèsMéthode
  • @Après les cours
  • @AprèsTest
  • @AfterSuite

Un test unitaire est le premier test de base effectué après avoir terminé le développement d'un certain code. De nombreux développeurs utilisent JUnit pour exécuter leur premier test unitaire. C'est un logiciel open source. Il aide à automatiser les scénarios de test. L'idée est d'automatiser les tests répétitifs du code.

Cela peut être intégré à Selenium lors du test d'applications Web. Les annotations JUnit aident avec les fonctions de Selenium. L'ajout d'annotations JUnit aide à mieux comprendre les méthodes. Voici quelques exemples d'annotations JUnit.

  • @Test paramétré
  • @Courir avec
  • @Test répété
  • @Paramètres

78. Expliquez la politique de même origine et comment Selenium la gère ?

La même politique d'origine ne permet pas d'accéder au DOM d'un document particulier à partir d'une origine différente de la politique d'origine spécifiée. Avec l'aide de JavaScript, il remplace ce problème. Il déploie sa propre réponse javascript pour l'autorisation et la poursuite.

79. Comment pouvons-nous créer un cadre de test basé sur les données à l'aide de TestNG ?

Il y a souvent une exigence d'un référentiel d'objets dans les frameworks de test lors de l'utilisation de TestNG. Voici un exemple d'extrait de code utilisé pour écrire un framework piloté par les données dans TestNG

|__+_|

80. Comment pouvez-vous utiliser le scénario de récupération dans WebDriver ?

Il existe deux types de récupérations : la pré-récupération et la post-récupération.

  • Pré-récupération : Prendre conscience des situations qui peuvent survenir et chercher des moyens de s'en remettre
  • Post-récupération : une fois l'exécution terminée et les paramètres de pré-récupération couverts, la post-récupération est mise en place. C'est pour atteindre le dernier état normal de l'exécution qu'il faut respecter.

Le diagramme suivant décrit le type de déclencheurs qui peuvent conduire aux états de pré- et post-récupération.

Questions et réponses de l'entretien d'embauche avec Selenium

81. Quelles sont les méthodes disponibles pour télécharger un fichier dans Selenium ?

Voici les méthodes de téléchargement d'un fichier.

  1. Utilisation simple de sendKeys()
  2. Écrivez un code qui récupèrerait les éléments Web dans le HTML et téléchargerait le fichier nécessaire.
  3. Utilisez des outils tiers comme TestNG, Jenkins faire le téléchargement du fichier
  4. Peut également prendre l'aide de la classe de robot

82. Quelles sont les méthodes disponibles pour télécharger un fichier dans Selenium ?

Ce sont les méthodes suivantes par lesquelles on peut télécharger des fichiers dans Selenium

  1. AutoIT - qui est un outil d'automatisation
  2. Classe de robots
  3. Paramètres du profil du navigateur.

83. Comment exécuter Selenium Web Driver Test depuis la ligne de commande ?

Voici les étapes que vous devez suivre pour exécuter vos tests à partir de la ligne de commande

  1. Télécharger java à partir du site Web de java
  2. Installez Java à l'aide du fichier de téléchargement exe
  3. Découvrez le pack Selenium Remote Control (RC)
  4. Ouvrez la fenêtre d'invite de commande.
  5. Exécutez la commande
|__+_|

Ici, le navigateur peut être firefox ou chrome ou internet explorer (selon ce que vous avez mis dans la commande).

84. Comment basculer entre les cadres dans Selenium ?

Il existe trois façons différentes de basculer entre les cadres dans Selenium

  1. Par élément Web
  2. Par indice
  3. Par nom/identifiant
  • Utilisation du nom/ID
    • driver.switchTo().frame(iframe1);
    • driver.switchTo().frame(id de l'élément);
  • Utilisation de l'index
    • driver.switchTo().frame(0);
    • driver.switchTo().frame(1);

85. Comment redimensionner la fenêtre du navigateur à l'aide de Selenium WebDriver ?

Des extraits de code faciles sont disponibles sur Internet pour être exécutés sur le Selenium WebDriver. Après avoir récupéré l'adresse Web, vous pouvez exécuter la commande suivante. Le code sera placé sous la fonction principale public void.

|__+_|

86. Quels sont les outils de test multi-navigateurs pour exécuter des scripts Selenium sur le cloud ?

Le test de navigation croisée consiste à vérifier si le site Web est fonctionnel et se charge dans un certain laps de temps. Voici ce dont vous avez besoin pour effectuer des tests de navigation croisée dans Selenium.

  1. Créer un compte BrowserStack
  2. Notez le nom d'utilisateur et la clé de compte pour le BrowserStack
  3. Installer des pots de sélénium
  4. Installer les bocaux TestNG

Ensuite, vous êtes prêt à exécuter les tests de navigation croisée via BrowserStack dans Selenium

87. Quelles sont les fonctionnalités souhaitées dans Selenium ?

Chaque navigateur a une certaine liste de propriétés qui aide à l'exécution d'un test de navigateur croisé pour diverses applications Web. Les capacités souhaitées sont une classe dans l'outil de test Selenium pour aider avec ces listes de propriétés d'un navigateur. Ils retiennent leurs clés et leurs valeurs pour noter le nom, la version et le chemin du navigateur pendant l'exécution des scripts de test.

88. Pourquoi avons-nous besoin des capacités souhaitées dans Selenium ?

Il est nécessaire d'exécuter les tests dans un environnement donné. Les capacités souhaitées aident à canaliser la communication sur les paramètres du navigateur Web avec le pilote Web. Par conséquent, ils jouent un rôle crucial dans les tests d'automatisation fonctionnelle.

89. Quelles sont les différentes méthodes de capacités souhaitées dans Selenium ?

Utilisez la méthode de test suivante

  1. getBrowserName()
  2. setBrowserName()
  3. obtenirVersion()
  4. setVersion()
  5. getPlatform()
  6. setPlatform ()
  7. getCapabilityMethod()
  8. setCapabilityMethod()

90. Où avez-vous appliqué les POO dans Automation Framework ?

  1. Abstraction

La conception du modèle d'objet de page utilise l'abstraction dans son fonctionnement. Les localisateurs sont utilisés dans ce cas pour les tests. La méthode de masquage de l'implémentation est évoquée à travers ce système dans l'Automation Framework.

  1. Interface

L'interface fournie dans Automation Framework est le navigateur. Chrome, firefox sont des navigateurs facilement utilisables qui agissent comme une interface. Un exemple classique de cette utilisation est : -

|__+_|
  1. Héritage

La classe de base est créée pour l'initialisation de l'interface des pilotes Web, attend et fichier Excel avec les données de test. Un héritage est défini dans la classe pour tous ces éléments Web initialisés.

  1. Polymorphisme

Il existe un mécanisme constant de surcharge et de remplacement mis en œuvre dans le cadre d'automatisation. On peut directement déclarer des méthodes dans la classe enfant. Il s'agit d'un exemple classique de dépassement.

91. Expliquez brièvement le framework Selenium

image 617dc9ff6ca6d

Cadre de sélénium

Il existe différents types de cadres : -

  1. Cadre basé sur les données - Pour créer des données et des cas de test séparés. Cela facilite le traitement des données séparément. On peut aussi créer un référentiel d'objets.
  2. Cadre de test basé sur les mots clés - Cela se fait en séparant les mots clés et les fonctions. Cela accélérera l'ensemble du processus.
  3. Cadre de test hybride - Une combinaison d'un cadre de test basé sur les données et d'un cadre de test basé sur des mots clés est appelée une structure hybride. Cela utilise les deux capacités.

92. Quelles sont les différences entre Selenium 2.0 et Selenium 3.0 ?

Sélénium 2.0Sélénium 3.0
Navigateurs compatibles : Mozilla, Chrome et Internet ExplorerAvec les navigateurs Selenium 2.0, il prend désormais en charge - Edge, Safari
AndroidDriver pour appareils mobilesAppium pour appareils mobiles
WebDriver+SeleniumRCLa télécommande Selenium RC ou Selenium est simplement prise en charge par le WebDriver

93. Qu'est-ce qu'une classe Robot ?

Afin d'implémenter le code d'automatisation dans les tests, Robot Class est utilisé dans Selenium. Il peut déclencher des entrées pour le système d'automatisation. L'intégration de la classe de robot facilite l'exécution des codes. Cela aide également à relever les défis liés aux fenêtres contextuelles.

94. Expliquez la différence entre findElement() et findElements() dans Selenium.

trouverÉlément ()trouverÉléments ()
Le premier élément découvert est retourné par la fonction.La liste des éléments découverts est retournée par la fonction
Peut lancer NoSuchElementExceptionIl n'y a pas d'exception
Identifie les éléments uniquesIdentifie un groupe d'éléments

95. Quel type de cas de test automatiser ?

Il existe différents types de scénarios de test auxquels un testeur est confronté. Il est nécessaire d'identifier les cas qui doivent être automatisés. Les éléments suivants sont pris en compte avant de créer un script d'automatisation.

  1. Vérifier combien de fois le cas de test est utilisé et à quelle fréquence est-il testé
  2. Apprenez le comportement et le flux des données pour identifier les points faibles qui peuvent être réduits par l'automatisation.
  3. Choisissez les cas qui ont un résultat prévisible
  4. Existe-t-il plusieurs itérations du même cas d'utilisation ? Si oui, alors l'automatisation est une option formidable.
  5. Évitez le cas de test qui est de nature dynamique.

96. Comment pouvons-nous maximiser les fenêtres du navigateur dans Selenium ?

Un code simple peut être écrit soit via Javascript, soit directement sur Selenium.

|__+_|

97. Quelle est la différence entre driver.getWindowHandle() et driver.getWindowHandles() dans le WebDriver ?

driver.getWindowHandle()driver.getWindowHandles()
Donne le handle de la page sur laquelle se trouve l'utilisateurDonne les descripteurs de toutes les pages disponibles.

98. Comment savoir si un élément est affiché sur la page Web ?

Les fonctions suivantes peuvent être utilisées pour identifier la présence d'un élément :

  1. est autorisé()
  2. est sélectionné()
  3. est affiché()

99. Quels sont les types de données que Selenium peut gérer ?

  1. YAML
  2. XML
  3. CSV
  4. EXCELLER
  5. JSON
  6. SQL

100. Expliquez la ligne de code Webdriver driver = new FirefoxDriver();

Ce code particulier traite de la Concept d'interface dans les POO . Cela aide à l'initialisation d'un objet de type Webdriver pour un objet FirefoxDriver.

Conclusion

Il n'est certainement pas facile de répondre à toutes les questions de l'entretien avec Selenium Webdriver. Avec une compréhension de base et des connaissances pratiques, vous êtes assuré de décrocher l'emploi de vos rêves en tant qu'ingénieur en assurance qualité. Ce blog répertorie les questions d'entretien fréquemment posées au sélénium pour les aspirants testeurs.