50 most popularly asked selenium interview questions
Dans ce tutoriel, nous avons répertorié les meilleurs 50 questions d'entretien Selenium les plus fréquemment posées, y compris Selenium IDE, Selenium RC, Selenium Grid et Selenium WebDriver.
Une note rapide sur cette série d'articles Selenium avant de passer à ce didacticiel:
Ceci est le dernier tutoriel de notre série de formations en ligne Selenium comprenant plus de 30 tutoriels complets. J'espère que vous avez tous apprécié ces tutoriels et commencé à en tirer des leçons. Si vous êtes nouveau ici, rendez-vous sur ce tout premier tutoriel de cette série de formation.
******************
Regardez également ceci ' Le meilleur cours de formation en ligne sur Selenium »Pour apprendre l'outil d'automatisation Selenium d'un expert ayant plus de 10 ans d'expérience en automatisation Selenium.
******************
Top 50 des questions et réponses d'entretien avec Selenium
Nous y voilà.
Q # 1) Qu'est-ce que les tests d'automatisation?
Les tests d'automatisation ou d'automatisation des tests sont un processus d'automatisation du processus manuel pour tester l'application / le système testé. Les tests d'automatisation impliquent l'utilisation d'un outil de test distinct qui vous permet de créer des scripts de test qui peuvent être exécutés à plusieurs reprises et ne nécessitent aucune intervention manuelle.
Q # 2) Quels sont les avantages des tests d'automatisation?
Les avantages des tests d'automatisation sont:
- Prend en charge l'exécution de cas de test répétés
- Aide à tester une grande matrice de test
- Permet une exécution parallèle
- Encourage l'exécution sans surveillance
- Améliore la précision, réduisant ainsi les erreurs générées par l'homme
- Gain de temps et d'argent
Q # 3) Pourquoi choisir Selenium comme outil de test?
Sélénium
- est une source libre et ouverte
- avoir une large base d'utilisateurs et aider les communautés
- ont une compatibilité entre navigateurs (Firefox, Chrome, Internet Explorer, Safari, etc.)
- ont une grande compatibilité avec les plates-formes (Windows, Mac OS, Linux, etc.)
- prend en charge plusieurs langages de programmation (Java, C #, Ruby, Python, Pearl, etc.)
- a des développements de référentiel frais et réguliers
- prend en charge les tests distribués
Q # 4) Qu'est-ce que le sélénium? Quels sont les différents composants du sélénium?
Selenium est l'une des suites de tests automatisés les plus populaires. Selenium est conçu de manière à prendre en charge et à encourager les tests d'automatisation des aspects fonctionnels des applications Web et d'un large éventail de navigateurs et de plates-formes. En raison de son existence dans la communauté open source, il est devenu l'un des outils les plus acceptés parmi les professionnels du test.
les entreprises qui vous paient pour tester leurs produits
Selenium n'est pas simplement un outil unique ou un utilitaire, mais plutôt un ensemble de plusieurs outils de test et pour la même raison, il est appelé une suite. Chacun de ces outils est conçu pour répondre à différentes exigences d'environnement de test et de test.
Le package de la suite comprend les ensembles d'outils suivants:
- Environnement de développement intégré Selenium (IDE) - Selenium IDE est un outil d'enregistrement et de lecture. Il est distribué sous forme de plugin Firefox.
- Télécommande au sélénium (RC) - Selenium RC est un serveur qui permet à un utilisateur de créer des scripts de test dans le langage de programmation souhaité. Il permet également d'exécuter des scripts de test dans le large éventail de navigateurs.
- Selenium WebDriver - WebDriver est un outil totalement différent qui présente divers avantages par rapport à Selenium RC. WebDriver communique directement avec le navigateur Web et utilise sa compatibilité native pour automatiser.
- Grille de sélénium - Selenium Grid est utilisé pour distribuer votre exécution de test sur plusieurs plates-formes et environnements simultanément.
Q # 5) Quels sont les types de tests qui peuvent être pris en charge par Selenium?
Selenium prend en charge les types de tests suivants:
- Test fonctionel
- Les tests de régression
Q # 6) Quelles sont les limites du sélénium?
Voici les limites du sélénium:
- Selenium prend en charge le test des applications Web uniquement
- Les applications mobiles ne peuvent pas être testées avec Selenium
- Les lecteurs Captcha et Barcode ne peuvent pas être testés avec Selenium
- Les rapports ne peuvent être générés qu'à l'aide d'outils tiers tels que TestNG ou JUnit.
- Comme Selenium est un outil gratuit, il n'y a donc pas de support fournisseur prêt à travers l'utilisateur peut trouver de nombreuses communautés d'aide.
- L'utilisateur doit posséder une connaissance préalable du langage de programmation.
Q # 7) Quelle est la différence entre Selenium IDE, Selenium RC et WebDriver?
Fonctionnalité | IDE sélénium | Sélénium RC | WebDriver |
---|---|---|---|
Gestion des alertes, des navigations, des listes déroulantes | Selenium IDE ne fournit pas explicitement d'aides pour gérer les alertes, les navigations, les listes déroulantes | Selenium RC ne fournit pas explicitement d'aides pour gérer les alertes, les navigations, les listes déroulantes. | WebDriver propose une large gamme d'utilitaires et de classes qui aident à gérer les alertes, les navigations et les listes déroulantes de manière efficace et efficiente. |
Compatibilité du navigateur | Selenium IDE est un plugin Firefox, il ne prend donc en charge que Firefox | Selenium RC prend en charge une gamme variée de versions de Mozilla Firefox, Google Chrome, Internet Explorer et Opera. | WebDriver prend en charge une gamme variée de versions de Mozilla Firefox, Google Chrome, Internet Explorer et Opera. Prend également en charge HtmlUnitDriver qui est un navigateur sans interface graphique ou sans tête. |
Enregistrement et lecture | Selenium IDE prend en charge la fonction d'enregistrement et de lecture | Selenium RC ne prend pas en charge la fonction d'enregistrement et de lecture. | WebDriver ne prend pas en charge la fonction d'enregistrement et de lecture |
Exigence du serveur | Selenium IDE ne nécessite aucun serveur pour être démarré avant d'exécuter les scripts de test | Selenium RC nécessite le démarrage du serveur avant d'exécuter les scripts de test. | WebDriver ne nécessite aucun serveur pour être démarré avant d'exécuter les scripts de test |
Architecture | Selenium IDE est un framework basé sur Javascript | Selenium RC est un Framework basé sur JavaScript. | WebDriver utilise la compatibilité native du navigateur avec l'automatisation |
Orienté objet | Selenium IDE n'est pas un outil orienté objet | Selenium RC est un outil semi-orienté objet. | WebDriver est un outil purement orienté objet |
Finders dynamiques (pour localiser des éléments Web sur une page Web) | Selenium IDE ne prend pas en charge les chercheurs dynamiques | Selenium RC ne prend pas en charge les viseurs dynamiques. | WebDriver prend en charge les chercheurs dynamiques |
Test WAP (iPhone / Android) | Selenium IDE ne prend pas en charge les tests des applications iPhone / Andriod | Selenium RC ne prend pas en charge les tests des applications iPhone / Android. | WebDriver est conçu de manière à prendre en charge efficacement les tests des applications iPhone / Android. L'outil est livré avec une large gamme de pilotes pour les tests basés sur WAP. Par exemple, AndroidDriver, iPhoneDriver |
Assistance aux auditeurs | Selenium IDE ne prend pas en charge les écouteurs | Selenium RC ne prend pas en charge les auditeurs. | WebDriver prend en charge l'implémentation des écouteurs |
La vitesse | Selenium IDE est rapide car il est branché avec le navigateur Web qui lance le test. Ainsi, l'IDE et le navigateur communiquent directement | Selenium RC est plus lent que WebDriver car il ne communique pas directement avec le navigateur; il envoie plutôt des commandes selenese à Selenium Core qui à son tour communique avec le navigateur. | WebDriver communique directement avec les navigateurs Web. Le rendant ainsi beaucoup plus rapide. |
Q # 8) Quand dois-je utiliser Selenium IDE?
Selenium IDE est le plus simple et le plus simple de tous les outils du package Selenium. Sa fonction d'enregistrement et de lecture le rend extrêmement facile à apprendre avec un minimum de connaissances avec n'importe quel langage de programmation. Selenium IDE est un outil idéal pour un utilisateur naïf.
Q # 9) Qu'est-ce que Selenese?
Selenese est le langage utilisé pour écrire des scripts de test dans Selenium IDE.
Q # 10) Quels sont les différents types de localisateurs dans Selenium?
Le localisateur peut être qualifié d'adresse qui identifie un élément Web de manière unique dans la page Web. Ainsi, pour identifier les éléments Web avec précision et précision, nous avons différents types de localisateurs dans Selenium :
- ID
- Nom du cours
- Nom
- TagName
- LinkText
- PartialLinkText
- Xpath
- Sélecteur CSS
- JUGEMENT
Q # 11) Quelle est la différence entre les commandes assert et verify?
Affirmer: La commande Assert vérifie si la condition donnée est vraie ou fausse. Disons que nous affirmons si l'élément donné est présent ou non sur la page Web. Si la condition est vraie, alors la commande de programme exécutera l'étape de test suivante mais si la condition est fausse, l'exécution s'arrêterait et aucun autre test ne serait exécuté.
Vérifier: La commande Verify vérifie également si la condition donnée est vraie ou fausse. Indépendamment du fait que la condition soit vraie ou fausse, l’exécution du programme ne s’arrête pas, c’est-à-dire qu’aucun échec pendant la vérification n’arrêterait l’exécution et toutes les étapes de test seraient exécutées.
Q # 12) Qu'est-ce qu'un XPath?
XPath est utilisé pour localiser un élément Web en fonction de son chemin XML. XML signifie Extensible Markup Language et est utilisé pour stocker, organiser et transporter des données arbitraires. Il stocke les données dans une paire clé-valeur qui est très similaire aux balises HTML. Tous deux étant des langages de balisage et comme ils relèvent du même parapluie, XPath peut être utilisé pour localiser des éléments HTML.
Le principe de la localisation des éléments à l'aide de XPath est le parcours entre divers éléments sur toute la page et permet ainsi à un utilisateur de trouver un élément avec la référence d'un autre élément.
Q # 13) Quelle est la différence entre «/» et «//» dans Xpath?
Barre oblique simple '/' - Une barre oblique unique est utilisée pour créer Xpath avec un chemin absolu, c'est-à-dire que le xpath serait créé pour démarrer la sélection à partir du nœud de document / nœud de départ.
Double barre oblique «//» - La double barre oblique est utilisée pour créer Xpath avec un chemin relatif, c'est-à-dire que le xpath serait créé pour commencer la sélection à partir de n'importe où dans le document.
Q # 14) Qu'est-ce que la politique de même origine et comment peut-elle être gérée?
Le problème de la même politique d'origine empêche d'accéder au DOM d'un document à partir d'une origine différente de l'origine à laquelle nous essayons d'accéder au document.
L'origine est une combinaison séquentielle de schéma, d'hôte et de port de l'URL. Par exemple, pour une URL https://www.softwaretestinghelp.com/resources/, l'origine est une combinaison de http, softwaretestinghelp.com, 80 en conséquence.
Ainsi le Selenium Core (programme JavaScript) ne peut pas accéder aux éléments depuis une origine différente de celle où il a été lancé. Par exemple, si j'ai lancé le programme JavaScript à partir de «https://www.softwaretestinghelp.com», je pourrais alors accéder aux pages du même domaine telles que «https://www.softwaretestinghelp.com/resources »Ou« https://www.softwaretestinghelp.com/istqb-free-updates/ ». Les autres domaines comme google.com, seleniumhq.org ne seraient plus accessibles.
Ainsi, afin de gérer la même politique d'origine, Selenium Remote Control a été introduit.
Q # 15) Quand devrais-je utiliser Selenium Grid?
Selenium Grid peut être utilisé pour exécuter des scripts de test identiques ou différents sur plusieurs plates-formes et navigateurs simultanément afin de réaliser une exécution de test distribuée, de tester sous différents environnements et de gagner du temps d'exécution de manière remarquable.
Q # 16) Que voulons-nous dire par sélénium 1 et sélénium 2?
Selenium RC et WebDriver, dans une combinaison, sont communément appelés Selenium 2. Selenium RC seul est également appelé Selenium 1.
Q # 17) Quel est le dernier outil Selenium?
WebDriver
Q # 18) Comment lancer le navigateur à l'aide de WebDriver?
La syntaxe suivante peut être utilisée pour lancer le navigateur:
Pilote WebDriver = Nouveau FirefoxDriver ();
Pilote WebDriver = Nouveau ChromeDriver ();
Pilote WebDriver = Nouveau InternetExplorerDriver ();
Q # 19) Quels sont les différents types de pilotes disponibles dans WebDriver?
Les différents pilotes disponibles dans WebDriver sont:
quelle est la clé de sécurité réseau pour le sans fil
- FirefoxDriver
- InternetExplorerDriver
- ChromeDriver
- SafariDriver
- OperaDriver
- AndroidDriver
- IPhoneDriver
- HtmlUnitDriver
Q # 20) Quels sont les différents types d'attente disponibles dans WebDriver?
Il y en a deux types d'attente disponibles dans WebDriver :
- Attente implicite
- Attente explicite
Attente implicite: Les attentes implicites sont utilisées pour fournir un temps d'attente par défaut (par exemple 30 secondes) entre chaque étape / commande de test consécutive sur l'ensemble du script de test. Ainsi, l'étape de test suivante ne s'exécuterait que lorsque les 30 secondes se seraient écoulées après l'exécution de l'étape / commande de test précédente.
Attente explicite: Les attentes explicites sont utilisées pour arrêter l'exécution jusqu'à ce qu'une condition particulière soit remplie ou que le temps maximum se soit écoulé. Contrairement aux attentes implicites, les attentes explicites ne sont appliquées qu'à une instance particulière.
Q # 21) Comment taper dans une zone de texte en utilisant Selenium?
L'utilisateur peut utiliser sendKeys («Chaîne à saisir») pour saisir la chaîne dans la zone de texte.
Syntaxe:
Nom d'utilisateur WebElement = drv .findElement (Par.id ( 'E-mail' ));
// saisie du nom d'utilisateur
username.sendKeys ( 'Qch' );
Q # 22) Comment savoir si un élément est affiché à l'écran?
WebDriver facilite à l'utilisateur les méthodes suivantes pour vérifier la visibilité des éléments Web. Ces éléments Web peuvent être des boutons, des boîtes de dépôt, des cases à cocher, des boutons radio, des étiquettes, etc.
- est affiché()
- est sélectionné()
- est autorisé()
Syntaxe:
est affiché():
booléen buttonPresence = driver.findElement (Par.id ( 'Croire' )).est affiché();
est sélectionné():
booléen buttonSelected = driver.findElement (Par.id ( 'Croire' )).est sélectionné();
est autorisé():
booléen searchIconEnabled = driver.findElement (By.id ( 'Gbqfb' )).est autorisé();
Q # 23) Comment pouvons-nous obtenir le texte d'un élément Web?
La commande Get est utilisée pour récupérer le texte interne de l'élément Web spécifié. La commande ne nécessite aucun paramètre mais renvoie une valeur de chaîne. C'est également l'une des commandes les plus utilisées pour vérifier les messages, les étiquettes, les erreurs, etc. affichés sur les pages Web.
Syntaxe:
String Text = driver.findElement (By.id (“Text”)). GetText ();
Q # 24) Comment sélectionner une valeur dans une liste déroulante?
La valeur de la liste déroulante peut être sélectionnée à l’aide de la classe Select de WebDriver.
Syntaxe:
selectByValue:
Sélectionnez selectByValue = Nouveau Sélectionner( chauffeur .findElement (Par.id ( 'SelectID_One' )));
selectByValue.selectByValue ( 'Valeur verte' );
selectByVisibleText:
Sélectionnez selectByVisibleText = Nouveau Sélectionnez ( chauffeur .findElement (Par.id ( 'SelectID_Two' )));
selectByVisibleText.selectByVisibleText ( 'Chaux' );
selectByIndex:
Sélectionnez selectByIndex = Nouveau Sélectionner( chauffeur .findElement (Par.id ( 'SelectID_Three' )));
selectByIndex.selectByIndex (2);
Q # 25) Quels sont les différents types de commandes de navigation?
Voici les commandes de navigation :
naviguer (). retour () - La commande ci-dessus ne nécessite aucun paramètre et ramène l'utilisateur à la page Web précédente dans l'historique du navigateur Web.
Exemple de code:
driver.navigate (). back ();
naviguer (). avancer () - Cette commande permet à l'utilisateur de naviguer vers la page Web suivante en référence à l'historique du navigateur.
Exemple de code:
driver.navigate (). forward ();
naviguer (). refresh () - Cette commande permet à l'utilisateur de rafraîchir la page Web actuelle en rechargeant tous les éléments Web.
Exemple de code:
driver.navigate (). refresh ();
aller vers() - Cette commande permet à l'utilisateur de lancer une nouvelle fenêtre de navigateur Web et d'accéder à l'URL spécifiée.
Exemple de code:
driver.navigate (). to («https://google.com»);
Q # 26) Comment cliquer sur un hyperlien en utilisant linkText?
chauffeur .findElement (Par.linkText ( 'Google' )).Cliquez sur();
La commande trouve l'élément en utilisant le texte du lien, puis cliquez sur cet élément et ainsi l'utilisateur serait redirigé vers la page correspondante.
Le lien mentionné ci-dessus est également accessible à l'aide de la commande suivante.
chauffeur .findElement (Par.partialLinkText ( 'Aller' )).Cliquez sur();
La commande ci-dessus trouve l'élément en fonction de la sous-chaîne du lien fournie entre parenthèses et donc partialLinkText () trouve l'élément Web avec la sous-chaîne spécifiée, puis clique dessus.
Q # 27) Comment cadre de poignée dans WebDriver ?
Un acronyme de cadre en ligne comme iframe est utilisé pour insérer un autre document dans le document HTML actuel ou simplement une page Web dans une page Web en activant l'imbrication.
Sélectionnez iframe par identifiant
chauffeur .switchTo (). frame ( ' ID du cadre ' );
Localisation de l'iframe à l'aide de tagName
driver.switchTo (). frame (driver.findElements (By.tagName (“iframe”). get (0));
Localisation d'iframe à l'aide de l'index
cadre (index)
driver.switchTo (). frame (0);
cadre (nom du cadre)
driver.switchTo (). frame («nom du cadre»);
frame (élément WebElement)
Sélectionnez la fenêtre parent
driver.switchTo (). defaultContent ();
Q # 28) Quand utilisons-nous findElement () et findElements ()?
findElement (): findElement () est utilisé pour trouver le premier élément de la page Web actuelle correspondant à la valeur de localisateur spécifiée. Notez que seul le premier élément correspondant sera récupéré.
Syntaxe:
Élément WebElement = chauffeur .findElements (Par.xpath ( '// div [@ id = 'exemple'] // ul // li' ));
findElements (): findElements () est utilisé pour trouver tous les éléments de la page Web actuelle correspondant à la valeur de localisateur spécifiée. Notez que tous les éléments correspondants seraient récupérés et stockés dans la liste des WebElements.
Syntaxe:
Liste elementList = chauffeur .findElements (Par.xpath ( '// div [@ id = 'exemple'] // ul // li' ));
Q # 29) Comment trouver plus d'un élément Web dans la liste?
Parfois, nous pouvons rencontrer des éléments du même type comme plusieurs hyperliens, images, etc. disposés dans une liste ordonnée ou non ordonnée. Ainsi, il est absolument logique de traiter de tels éléments par un seul morceau de code et cela peut être fait à l'aide de WebElement List.
Exemple de code
// Storing the list List elementList = driver.findElements(By.xpath('//div[@id='example']//ul//li')); // Fetching the size of the list int listSize = elementList.size(); for (int i=0; i Q # 30) Quelle est la différence entre la commande driver.close () et driver.quit?
Fermer() : La méthode close () de WebDriver ferme la fenêtre du navigateur Web sur laquelle l'utilisateur travaille actuellement ou nous pouvons également dire la fenêtre à laquelle le WebDriver accède actuellement. La commande ne nécessite aucun paramètre et ne renvoie aucune valeur.
quitter() : Contrairement à la méthode close (), la méthode quit () ferme toutes les fenêtres ouvertes par le programme. Identique à la méthode close (), la commande ne nécessite aucun paramètre et ne renvoie aucune valeur.
Q # 31) Selenium peut-il gérer les fenêtres pop-up?
Selenium est un outil de test d'automatisation qui ne prend en charge que les tests d'applications Web. Par conséquent, les fenêtres pop-up ne peuvent pas être gérées avec Selenium.
Q # 32) Comment pouvons-nous gérer les pop-up Web?
WebDriver offre aux utilisateurs un moyen très efficace de gérer ces pop-ups à l'aide de l'interface d'alerte . Il y a les quatre méthodes que nous utiliserions avec l'interface d'alerte.
questions d'entretien pour les développeurs .net
- void ignore () - La méthode de rejet () clique sur le bouton «Annuler» dès que la fenêtre pop-up apparaît.
- void accept () - La méthode accept () clique sur le bouton «Ok» dès que la fenêtre pop-up apparaît.
- String getText () - La méthode getText () renvoie le texte affiché dans la boîte d'alerte.
- void sendKeys (String stringToSend) - La méthode sendKeys () entre le modèle de chaîne spécifié dans la boîte d'alerte.
Syntaxe:
// acceptation de l'alerte javascript
Alert alert = driver.switchTo (). Alert ();
alert.accept ();
Q # 33) Comment pouvons-nous gérer les fenêtres pop-up?
Selenium est un outil de test d'automatisation qui ne prend en charge que les tests d'applications Web, ce qui signifie qu'il ne prend pas en charge les tests d'applications basées sur Windows. Cependant, Selenium seul ne peut pas aider la situation, mais avec une intervention de tiers, ce problème peut être surmonté. Il existe plusieurs outils tiers disponibles pour gérer les pop-ups basés sur les fenêtres avec le sélénium comme AutoIT, la classe Robot, etc.
Q # 34) Comment affirmer le titre de la page Web?
// vérifier le titre de la page Web
assertTrue («Le titre de la fenêtre est incorrect.», driver.getTitle (). equals («Titre de la page»));
Q # 35) Comment passer la souris sur un élément Web à l'aide de WebDriver?
WebDriver propose une large gamme d'utilitaires d'interaction que l'utilisateur peut exploiter pour automatiser les événements de la souris et du clavier. L'interface d'action est l'un de ces utilitaires qui simule les interactions d'un seul utilisateur.
Ainsi, dans le scénario suivant, nous avons utilisé l'interface d'action pour passer la souris sur une liste déroulante qui ouvre ensuite une liste d'options.
Exemple de code:
// Instantiating Action Interface Actions actions=new Actions(driver); // howering on the dropdown actions.moveToElement(driver.findElement(By.id('id of the dropdown'))).perform(); // Clicking on one of the items in the list options WebElement subLinkOption=driver.findElement(By.id('id of the sub link')); subLinkOption.click();
Q # 36) Comment récupérer les propriétés CSS d'un élément?
Les valeurs des propriétés css peuvent être récupérées à l'aide d'une méthode get ():
Syntaxe:
driver.findElement (Par.id ( 'identifiant ')). GetCssValue ( 'Nom de l'attribut css' );
driver.findElement (Par.id ( 'identifiant ')). GetCssValue ( 'taille de police' );
Q # 37) Comment faire une capture d'écran dans WebDriver?
import org.junit.After; import org.junit.Before; import org.junit.Test; import java.io.File; import java.io.IOException; import org.apache.commons.io.FileUtils; import org.openqa.selenium.OutputType; import org.openqa.selenium.TakesScreenshot; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; public class CaptureScreenshot { WebDriver driver; @Before public void setUp() throws Exception { driver = new FirefoxDriver(); driver.get('https://google.com'); } @After public void tearDown() throws Exception { driver.quit(); } @Test public void test() throws IOException { // Code to capture the screenshot File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE); // Code to copy the screenshot in the desired location FileUtils.copyFile(scrFile, new File('C:\CaptureScreenshot\google.jpg')) } }
Q # 38) Qu'est-ce que Junit?
Junit est un framework de test unitaire introduit par Apache. Junit est basé sur Java.
Q # 39) Que sont les annotations Junit?
Voici les annotations JUnit:
- @Test: L'annotation permet au système de savoir que la méthode annotée comme @Test est une méthode de test. Il peut y avoir plusieurs méthodes de test dans un seul script de test.
- @Avant que: La méthode annotée @Before indique au système que cette méthode doit être exécutée à chaque fois avant chacune des méthodes de test.
- @Après: La méthode annotée @After indique au système que cette méthode doit être exécutée à chaque fois après chacune des méthodes d'essai.
- @Avant les cours: La méthode annotée comme @BeforeClass permet au système de savoir que cette méthode doit être exécutée une fois avant toute méthode de test.
- @Après les cours: La méthode annotée en tant que @AfterClass indique au système que cette méthode doit être exécutée une fois après l'une des méthodes de test.
- @Ignorer: La méthode annotée comme @Ignore permet au système de savoir que cette méthode ne doit pas être exécutée.
Q # 40) Qu'est-ce que TestNG et en quoi est-il meilleur que Junit?
TestNG est un framework avancé conçu de manière à tirer parti des avantages des développeurs et des testeurs. Avec le début des frameworks, JUnit a acquis une énorme popularité parmi les applications Java, les développeurs Java et les testeurs Java avec une amélioration remarquable de la qualité du code. En dépit d'être facile à utiliser et simple, JUnit a ses propres limitations qui donnent lieu à la nécessité d'intégrer TestNG dans l'image. TestNG est un framework open source qui est distribué sous la licence logicielle Apache et est facilement disponible pour téléchargement.
TestNG avec WebDriver fournit un format de résultat de test efficace qui peut, à son tour, être partagé avec les parties prenantes pour avoir un aperçu de la santé du produit / de l'application, éliminant ainsi l'inconvénient de l'incapacité de WebDriver à générer des rapports de test. TestNG a un mécanisme de gestion des exceptions intégré qui permet au programme de s'exécuter sans s'arrêter de manière inattendue.
Il existe divers avantages qui rendent TestNG supérieur à JUnit. Certains d'entre eux sont:
- Ajout d'annotations avancées et faciles
- Les modèles d'exécution peuvent définir
- Exécution simultanée de scripts de test
- Les dépendances de cas de test peuvent être définies
Q n ° 41) Comment définir la priorité du cas de test dans TestNG?
Définition de la priorité dans TestNG
Extrait de code
package TestNG; import org.testng.annotations.*; public class SettingPriority { @Test(priority=0) public void method1() { } @Test(priority=1) public void method2() { } @Test(priority=2) public void method3() { } }
Séquence d'exécution du test:
- Méthode 1
- Méthode2
- Méthode3
Q # 42) Qu'est-ce qu'un cadre?
Le cadre est un mélange constructif de diverses lignes directrices, normes de codage, concepts, processus, pratiques, hiérarchies de projet, modularité, mécanisme de rapport, injections de données de test, etc. aux tests d'automatisation des piliers.
Q n ° 43) Quels sont les avantages du framework Automation?
L'avantage de Cadre d'automatisation des tests
- Réutilisabilité du code
- Couverture maximale
- Scénario de récupération
- Maintenance à faible coût
- Intervention manuelle minimale
- Rapports faciles
Q # 44) Quels sont les différents types de cadres?
Voici les différents types de frameworks:
- Cadre de test basé sur des modules: Le cadre divise l'ensemble de «l'application sous test» en nombre de modules logiques et isolés. Pour chaque module, nous créons un script de test distinct et indépendant. Ainsi, lorsque ces scripts de test ont pris ensemble, construit un script de test plus grand représentant plus d'un module.
- Framework de test d'architecture de bibliothèque: Le principe de base derrière le cadre est de déterminer les étapes communes et de les regrouper en fonctions sous une bibliothèque et d'appeler ces fonctions dans les scripts de test chaque fois que nécessaire.
- Data Driven Testing Framework: Data Driven Testing Framework aide l'utilisateur à séparer la logique du script de test et les données de test les unes des autres. Il permet à l'utilisateur de stocker les données de test dans une base de données externe. Les données sont classiquement stockées dans des paires «clé-valeur». Ainsi, la clé peut être utilisée pour accéder et peupler les données dans les scripts de test.
- Cadre de test basé sur les mots-clés: Le framework de test piloté par mot-clé est une extension du framework de test piloté par les données en ce sens qu'il sépare non seulement les données de test des scripts, mais conserve également le certain ensemble de code appartenant au script de test dans un fichier de données externe.
- Cadre de test hybride: Le cadre de test hybride est une combinaison de plusieurs cadres mentionnés ci-dessus. La meilleure chose à propos d'une telle configuration est qu'elle tire parti des avantages de toutes sortes de frameworks associés.
- Cadre de développement axé sur le comportement: Le cadre de développement axé sur le comportement permet l'automatisation des validations fonctionnelles dans un format facilement lisible et compréhensible pour les analystes commerciaux, les développeurs, les testeurs, etc.
Q # 45) Comment puis-je lire les données de test d'Excel?
Les données de test peuvent être lues efficacement à partir d'Excel en utilisant JXL ou l'API POI. Voir le tutoriel détaillé ici .
Q # 46) Quelle est la différence entre POI et jxl jar?
# Pot JXL Pot de POI un JXL prend en charge le format «.xls», c'est-à-dire le format binaire. JXL ne prend pas en charge Excel 2007 et le format «.xlsx», c'est-à-dire le format XML POI jar prend en charge tous ces formats deux L'API JXL a été mise à jour pour la dernière fois en 2009 POI est régulièrement mis à jour et publié 3 La documentation JXL n'est pas aussi complète que celle de POI POI dispose d'une documentation bien préparée et très complète 4 L'API JXL ne prend pas en charge la mise en forme de texte enrichi L'API POI prend en charge le formatage de texte enrichi 5 L'API JXL est plus rapide que l'API POI L'API POI est plus lente que l'API JXL
Q # 47) Quelle est la différence entre Selenium et QTP?
Fonctionnalité Sélénium Professionnel des tests rapides (QTP) Compatibilité du navigateur Selenium prend en charge presque tous les navigateurs populaires tels que Firefox, Chrome, Safari, Internet Explorer, Opera, etc. QTP prend en charge Internet Explorer, Firefox et Chrome. QTP prend uniquement en charge le système d'exploitation Windows Distribution Selenium est distribué en tant qu'outil open source et est disponible gratuitement QTP est distribué comme un outil sous licence et est commercialisé Application sous test Selenium prend en charge le test des applications Web uniquement QTP prend en charge les tests de l'application Web et de l'application Windows Référentiel d'objets Le référentiel d'objets doit être créé en tant qu'entité distincte QTP crée et gère automatiquement le référentiel d'objets Support linguistique Selenium prend en charge plusieurs langages de programmation tels que Java, C #, Ruby, Python, Perl, etc. QTP prend en charge uniquement VB Script Support des fournisseurs Étant donné que Selenium est un outil gratuit, l'utilisateur ne bénéficierait pas de l'assistance du fournisseur pour résoudre les problèmes Les utilisateurs peuvent facilement obtenir l'assistance du fournisseur en cas de problème
Q # 48) WebDriver peut-il tester les applications mobiles?
WebDriver ne peut pas tester les applications mobiles. WebDriver est un outil de test basé sur le Web, par conséquent, les applications sur les navigateurs mobiles peuvent être testées.
Q # 49) Le captcha peut-il être automatisé?
Non, le captcha et le lecteur de codes-barres ne peuvent pas être automatisés.
Q # 50) Qu'est-ce que le référentiel d'objets? Comment créer un référentiel d'objets dans Selenium?
Object Repository est un terme utilisé pour désigner la collection d'éléments Web appartenant à Application Under Test (AUT) avec leurs valeurs de localisateur. Ainsi, chaque fois que l'élément est requis dans le script, la valeur du localisateur peut être renseignée à partir du référentiel d'objets. Le référentiel d'objets est utilisé pour stocker les localisateurs dans un emplacement centralisé au lieu de les coder en dur dans les scripts.
Dans Selenium, les objets peuvent être stockés dans une feuille Excel qui peut être remplie à l'intérieur du script chaque fois que nécessaire.
C'est tout pour le moment.
J'espère que vous trouverez dans cet article des réponses aux questions les plus fréquemment posées sur Selenium et WebDriver Interview. Les réponses fournies ici sont également utiles pour comprendre les bases de Selenium et les rubriques avancées de WebDriver.
Avez-vous des questions d'entrevue Selenium auxquelles vous ne trouvez pas de réponse ici? Veuillez nous le faire savoir dans les commentaires ci-dessous et nous essaierons de répondre à toutes.
=> Ceci termine non seulement cet article, mais aussi notre série complète de formations Selenium. Consultez la liste des 30+ didacticiels répertoriés sur cette page . Veuillez nous faire part de vos commentaires et questions.
lecture recommandée
- Questions et réponses d'entrevue
- Questions d'entrevue Spock avec réponses (les plus populaires)
- Questions et réponses d'entrevue de test ETL
- Tutoriel Cucumber Selenium: Intégration Cucumber Java Selenium WebDriver
- FAQ sur le sélénium
- Intégration de Selenium avec JMeter
- Introduction à Selenium WebDriver - Tutoriel Selenium # 8
- Top 50 des questions et réponses d'entretiens CCNA les plus populaires