Académique Documents
Professionnel Documents
Culture Documents
EXAMEN N°1
SELENIUM WEBDRIVER
ASTUCE
Question 1 :
Question 2 :
Question 3 :
Quelles deux réponses parmi ce qui suit sont des avantages de l’automatisation de test ?
A. Effectuer certains tests qui ne peuvent pas être effectués du tout (ou facilement) manuellement
B. Les faux positifs peuvent être collectés et monitorés
C. Permet aux testeurs de se concentrer sur la technologie plutôt que sur le risque
D. Réduire les erreurs des testeurs ennuyés ou distraits
E. Il est plus facile d’ajouter une dette technique lors de l’automatisation
Question 4 :
Question 5 :
Lequel des éléments suivants N'EST PAS un niveau d'interface que nous pouvons automatiser
pour un SUT donné ?
A. Le niveau GUI
B. Le niveau service
C. Le niveau protocol
D. Le niveau definition
Question 6:
Parmi les avantages suivants, lequel est un avantage potentiel pouvant être obtenu
en utilisant Selenium WebDriver ?
A. API
B. Services
C. GUI
D. Aucun ; sélénium s'inscrit dans la couche de définition de test.
Question 8 :
Considérez les métriques suivantes qui pourraient être utiles, données dans le programme :
Question 9 :
Lequel des outils Selenium suivants peut exécuter des tests sur plusieurs machines ?
A. Selenium IDE
B. Selenium WebDriver
C. Selenium Grid
D. Selenium Standalone Server
Question 10 :
A. Un langage à base de balises qui définit un ensemble de règles pour coder des documents dans
un format lisible à la fois par l'homme et par la machine.
B. Un attribut HTML qui pointe vers une classe dans une feuille de style CSS.
C. Un langage de requête pour la sélection de nœuds à partir d'un document XML.
D. Un cadre HTML en ligne, utilisé pour intégrer un autre document dans un document HTML
Question 11:
Étant donné le code suivant, laquelle des options représente le mieux la page Web résultante ?
<html>
<body>
<h1>
Header Name
</h1>
<p>
paragraph text
</p>
<br/>
<!-- Here's the list:-->
<ul>
<li>first</li>
<li>second</li>
<li>third</li>
</ul>
</body>
</html>
A. Header Name
paragraph text
• first
• second
• third
B. Header Name
paragraph text
1. first
2. second
3. third
C. Header Name
paragraph text
• first
• second
• third
D. Header Name
paragraph text
Here's the list:
1. first
2. second
3. third
Question 13 :
A. //temperature[@city=“New York”]/text()
B. //temperature[@city=”New York”]/@UoM
C. //temperature[@city=”New York”]/@UoM/text()
D. @UoM[//temperature[@city=”New York”]]
Question 14 :
<html>
<head/>
<body>
<form class="odd first">
User: <input type="edit" class="user" name="user" />
<br/>
Password: <input type="edit" class="password" name="password" />
<br/>
<button type="submit" name="login" class="big button">Log in</button>
<button type="submit" name="cancel" class="big button">Cancel</button>
</form>
</body>
</html>
Quel (s) élément (s) HTML seront trouvés avec le sélecteur CSS suivant ?
Question 15 :
A. <head>
B. <p>
C. <br/>
D. <div>
Question 16 :
Question 17 :
Lequel des éléments suivants N'EST PAS une forme d'utiliser CSS dans un document HTML ?
Question 18 :
A. Une fonction dans une bibliothèque de logiciels dont le but principal est d'appeler une autre
fonction.
B. Une fonction fournissant une interface contre laquelle les tests Selenium sont écrits
C. Une fonction fournissant un environnement permettant l'exécution de scripts de test
automatisés, y compris des outils.
D. Une fonction dans une bibliothèque de logiciels dont le but principal est une interface de
programmation pour les documents HTML permettant aux programmes externes
d’interagir avec la page du navigateur.
Question 19 :
Lequel des choix ci-dessous n’est pas une boîte de dialogue de type alert ?
A. Alert
B. Iframe
C. Prompt
D. Confirm
Question 20 :
Que sera le résultat de l'exécution du morceau de code suivant à partir du fichier "question.py" ?
A. INFO:root:Line 3
WARNING:root:Line 5
ERROR:root:Line 6
INFO:root:Line 7
B. INFO:root:Line 3
WARNING:root:Line 5
ERROR:root:Line 6
Traceback (most recent call last):
File "question.py", line 8, in <module>
assert test_data == "Hello world", "Wrong test data"
AssertionError: Wrong test data
INFO:root:Line 7
C. INFO:root:Line 7
ERROR:root:Line 6
WARNING:root:Line 5
INFO:root:Line 3
D. INFO:root:Line 3
WARNING:root:Line 5
ERROR:root:Line 6
Traceback (most recent call last):
File "question.py", line 8, in <module>
assert test_data == "Hello world", "Wrong test data"
AssertionError: Wrong test data
Question 21 :
dr1 = webdriver.Chrome()
dr2 = webdriver.Firefox()
dr1.get(‘https://python.org’)
python_title = dr1.title
dr2.get(python_title)
dr2.get(‘https://perl.org’)
Que sera le résultat de son exécution (supposons que l'environnement de test soit
configuré correctement et que tous les pilotes soient présents) ? Choisissez deux :
Question 22 :
Étant donné un frame avec un identifiant "frameID", quelle est la / les meilleure (s)
ligne (s) de code pour changer le contexte du script de test afin de revenir du frame à
la page dans laquelle se trouve le frame ?
A. get('frameID').calling_page
B. element = driver.find_element_by_id('frameID')
element.back()
C. fr = driver.find_element_by_id('frameID')
driver.switch_to.frame(fr)
D. driver.switch_to.default_content()
Question 23 :
Laquelle des réponses suivantes contient le code Python approprié pour prendre une
capture d'écran de l'image python.png ?
Supposons que le driver de variable contienne la référence à l'objet WebDriver pour le navigateur Web
affichant la page à partir de laquelle l'extrait a été pris.
A. driver.find_element_by_id(“python.png”).screenshot(“my_new_pic.png”)
B. driver.find_element_by_id(“python”).screenshot(“my_new_pic.png”)
C. element = driver.find_element_by_id(“python”)
element.take_screenshot(“my_new_pic.png”)
D. element = driver.find_element_by_xpath(“a[@id=’python’]/img”)
element.take_screenshot(“my_new_pic.png”)
Question 24 :
Soit la case à cocher avec un ID = "case à cocher1", quelle (s) ligne (s) de code
obtiendra la valeur booléenne pour l'état sélectionné de la case à cocher ?
A. element = driver.find_element_by_id('checkbox1')
cb_state = element.is_selected()
B. element_state = element('checkbox1').is_selected
C. element = driver.find_element_by_id('checkbox1')
element_state = element.boolean
D. element = driver.find_element_by_state(id = 'checkbox1')
Question 25 :
A. element = driver.find_element_by_class_name('dropdown1.option3')
element.click()
B. dropdown = driver.find_element_by_id('dropdown1')
element = dropdown.find_element_by_class_name('option3')
element.click()
C. dropdown = driver.find_element_by_id(dropdown1)
element = dropdown.find_element_by_class(option3)
element.click
D. dropdown = driver.find_element_by_class_name(option3)
dropdown.click()
Question 26:
Quelle (s) ligne (s) de code vous permettra d'obtenir le texte d'une alerte ?
A. alert = driver.switch_to.alert
driver.find_element_by_text('text') in alert
B. alert = driver.switch_to.alert
assert 'alert_text' in alert
C. alert = driver.find_element_by_text('text').alert
D. alert = driver.switch_to.alert
alert_text = alert.text
Question 27 :
Pour plus d’efficacité, vous voulez créer des fonctions génériques pour
Question 28 :
Laquelle des phrases suivantes sur le logging et la création de rapports dans l'automatisation de
test est correcte ?
A. Le logging est utilisée pour afficher les résultats du test (réussite / échec) et la
génération de rapports pour afficher la trace d'une exécution de test automatisée.
B. Le logging est utilisée pour afficher les erreurs dans l'exécution d'un test automatisé
uniquement, et la génération de rapports pour afficher les données de test.
C. Le logging est utilisée pour afficher la trace d'une exécution de test automatisée, et le
rapport pour afficher les résultats du test (réussite / échec).
D. Le logging n'est pas nécessaire pour l'exécution automatique d'un test, car les scripts
de test contiennent des étapes de test et la création de rapports permet d'afficher les
résultats du test (réussite / échec).
Question 29 :
En supposant que plusieurs onglets soient ouverts dans un navigateur Chrome dont
l'objet WebDriver porte un identifiant de «pilote», comment fermer tout le navigateur et
tous ses onglets en même temps??
A. driver.close(“ALL”)
B. driver.quit()
C. driver.close()
D. driver.quit(‘ALL’)
Question 30 :
Après avoir utilisé un frame dans une page Web, l’une des méthodes suivantes constitue la
MEILLEURE approche pour modifier le contexte et le ramener à la page entière ?
Question 31 :
Quelle méthode d'objet webdriver prend une capture d'écran de tout l'écran et l'écrit
dans un fichier ?
A. get_screenshot_as_file(<filename>)
B. screenshot(<filename>)
C. get_screenshot_as_file(<filename>, <filetype>)
D. il n'y a pas une telle méthode, on devrait utiliser la méthode screenshot et
après conserver cette image dans un fichier séparément .
Question 32 :
Quel est le principal avantage de la localisation d'éléments de page Web par leur ID ?
A. Parce que la méthode de recherche d'éléments par id porte le nom le plus court
B. Parce que si une page Web contient du XML valide, cet attribut est unique, ainsi l'élément est
trouvé sans ambiguïté.
C. Parce que toutes les balises HTML ont cet attribute
D. Parce que cet attribut peut être utilisé dans toutes les stratégies de localisation
Question 33 :
ret_value = target_element.get_attribute('text')
retour None ?
Question 34 :
Dans l'application Web que vous testez, vous devez taper du texte dans une zone de texte.
Quelle est la meilleure approche pour saisir du texte dans une zone de texte à l'aide de WebDriver ?
A. Utilisez la classe switch_to pour passer à l'élément textbox, puis tapez le texte.
B. Utilisez la méthode cleartext (), puis utilisez la méthode send_keys (string_to_type) pour entrer le
texte.
C. Cliquez sur la zone de texte puis appelez la zone de texte ("<texte à saisir">).
D. Utilisez la méthode text (string_to_type) pour saisir le texte.
Question 35 :
Quels DEUX des méthodes suivantes ferment une alerte affichée par le navigateur Web ?
A. close()
B. dismiss()
C. escape()
D. accept()
E. quit()
Question 36 :
Laquelle des définitions suivantes est une bonne définition pour une Page Object Pattern?
A. Une approche d'automatisation des tests qui nécessite que la logique technique et
la logique métier soient traitées à différents niveaux.
B. Une fonction dans une bibliothèque de logiciels dont le but principal est d'appeler une
autre fonction souvent en ajoutant ou en améliorant des fonctionnalités
C. Une interface de programmation d'application qui traite un document HTML ou XML comme une
arborescence dans laquelle chaque nœud est un objet représentant une partie du document.
D. Une API dans le SUT qui est créée principalement pour fournir une testabilité améliorée
Question 37 :
Dans l'application Web que vous testez, vous obtenez l'état de plusieurs cases à cocher.
Laquelle des solutions suivantes est la meilleure approche pour rendre vos scripts de test
maintenables ?
Dans l'application Web que vous testez, une boîte de dialogue modale doit être fermée lorsque vous cliquez
sur le bouton d'annulation. Étant donné le code suivant :
Laquelle des méthodes de confort d’attente suivantes est la PLUS appropriée pour remplacer
[convenience method] ci-dessus pour savoir que la boîte de dialogue a été fermée?
A. title_is
B. element_to_be_clickable
C. invisibility_of_element_located
D. presence_of_element_located
Question 39 :
<form>
User: <input type="edit" id="user" name="user" />
<br/>
Password: <input type="edit" id="password" name="password" />
<br/>
<button type="submit" name="login">Log in</button>
<button type="submit" name="cancel" >Cancel</button>
</form>
A. def cancel_login():
drv.find_element_by_id("user").send_keys("admin")
drv.find_element_by_name("cancel").click()
B. def login():
drv.find_element_by_name("cancel").click()
C. def remind_password():
drv.find_element_by_link("remind").click()
D. def cancel_login():
drv.find_element_by_name("cancel").click()
Question 40 :
Lequel des ensembles de données suivants sera le meilleur ensemble de paramètres pour un
mot clé implémentant cette étape de test ?