当前位置:网站首页>Test d'automatisation de l'interface utilisateur télécharger manuellement le pilote du navigateur à partir de maintenant
Test d'automatisation de l'interface utilisateur télécharger manuellement le pilote du navigateur à partir de maintenant
2022-07-05 03:49:00 【Petit frère a dit que c'était un test.】
Merci d'avoir retiré
“Tout le monde faitUIQuand l'automatisation,Qu'est - ce qui vous dérange le plus,Est - ce que l'emplacement de l'élément ou le navigateur est compatible avec le débogage du pilote?On continue à regarder en bas.
”
Un..SeleniumWebDriver
SeleniumWebDriver
.C'est un programme qui permet de contrôlerWeb
Bibliothèque du Navigateur.Il offre unAPI
,.Peut être utilisé pour conduire dans différents langages de programmation(Par exemple:Java
、JavaScript
、Python
、C#
OuRuby
)Navigateur pour(Par exemple:Chrome
、Edge
OuFirefox
Attendez.).Selenium WebDriver
Le but principal deWeb
Essais automatisés des applications.
SeleniumWebDriver
Automatiser avec le support natif de chaque navigateur .Pour cette raison,,Nous devons utiliserSelenium WebDriver API
Placez un test appelé Driver
Binaires pour. Les pilotes des navigateurs Web grand public sont maintenant ChromeDriver (Chrome)
,geckoDriver (Firefox)
,Oumsededriver (Edge)
.WebDriver API
La communication avec les binaires du pilote utilise le nom W3C WebDriver
(Anciennement connu sous le nom deJSON Wire Protocol
) Le protocole standard de .Et puis, Utilisez les fonctions natives de chaque navigateur pour compléter la communication entre le pilote et le navigateur .
Nous téléchargerons manuellement la version correspondante du navigateur en fonction des différents navigateurs et versions du navigateur driver
,Définir les propriétés du système.
System.setProperty("webdriver.chrome.driver", "/path/to/chromedriver");
System.setProperty("webdriver.gecko.driver", "/path/to/geckodriver");
System.setProperty("webdriver.edge.driver", "/path/to/msedgedriver");
System.setProperty("webdriver.opera.driver", "/path/to/operadriver");
System.setProperty("webdriver.ie.driver", "C:/path/to/IEDriverServer.exe");
On faitUI
Les mises à jour du Navigateur sont souvent rencontrées lors de l'automatisation et driver
Problème d'inadéquation des versions, La solution est de télécharger manuellement la version correspondante driver
,Pour débutants, Ce n'est pas un travail facile , .Y a - t - il un moyen de télécharger automatiquement la version correspondante en fonction des différents navigateurs driver
Et alors??La réponse doit être oui., C'est ce dont nous parlions WebDriverManager
.C'est exact.Java
EtPython
Tout le monde est d'accord..
2..WebDriverManagerIntroduction
WebDriverManager
Est une source ouverteJava
Bibliothèque,Oui, bien sûr.Python
Version, Il est entièrement automatisé Selenium WebDriver
.Gestion des pilotes requis (Téléchargement, par exemple、 Mise en place et entretien ).En plus,Dans la version5Moyenne,WebDriverManager
D'autres fonctions connexes sont également disponibles , .Comme la découverte d'un navigateur installé sur un système local ,ConstruireWebDriver
Objet(Par exemple:ChromeDriver
、FirefoxDriver
、 EdgeDriver
Attendez.) ,InDocker
Navigateur fonctionnant de façon transparente dans un conteneur , Et les fonctions de surveillance .
Trois.WebDriverManagerSur le terrain(JavaÉdition)
1.pom.xmlAjouterWebDriverManagerDépendance
<dependency>
<groupId>io.github.bonigarcia</groupId>
<artifactId>webdrivermanager</artifactId>
<version>5.0.3</version>
<exclusions>
<exclusion>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
</exclusion>
</exclusions>
</dependency>
2. Créer un nouveau script de test ,Pour tester
import io.github.bonigarcia.wdm.WebDriverManager;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
/**
* @author Auteur:La voie de la croissance des ingénieurs d'essai
* @version Temps de création:2022/7/3
* Description de la classe:Téléchargement automatiqueChromePilote de navigateur
*/
public class OperateBrowserDriver {
public static void main(String[] args) throws InterruptedException {
WebDriverManager.chromedriver().setup();
WebDriver driver = new ChromeDriver();
driver.get("http://www.cnblogs.com/mrjade/");
Thread.sleep(1000);
driver.quit();
}
}
3.Résultats de la mise en œuvre
4.driverChemin de stockage(ParMacosPar exemple)
Quatre.WebDriverManagerSur le terrain(PythonÉdition)
1.Installation
pip install webdriver-manager
2.Utiliser
# coding=utf-8
'''
@Author : La voie de la croissance des ingénieurs d'essai
@Time : 2022/7/3 12:13
@Desc : Description de la méthode
@Software: PyCharm
'''
import time
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager().install())
driver.get("https://www.baidu.com/")
time.sleep(5)
driver.quit()
3.Résultats de la mise en œuvre
4.driverChemin de stockage(ParMacosPar exemple)
Quatre.Documents officiels
Voir la documentation du site officiel pour plus de détails sur l'utilisation du navigateur
https://bonigarcia.dev/webdrivermanager/
Partage des ressources d'apprentissage
Enfin, merci à tous ceux qui ont lu attentivement mon article,Regarder les fans monter et se concentrer,Il y a toujours quelque chose à faire.,Ce n'est pas très précieux.,Si vous pouvez l'utiliser, vous pouvez l'enlever directement
Ces informations,Pour penser【 Développement de tests avancés 】Pour les amis, c'est l'entrepôt de préparation le plus complet et le plus complet,Cet entrepôt m'a accompagné dans les plus difficiles,J'espère que ça t'aidera aussi.!Avant tout,En particulier dans le secteur de la technologie,Assurez - vous d'améliorer vos compétences techniques.J'espère que ça vous aidera.…….
边栏推荐
- v-if VS v-show 2.0
- 問下,這個ADB mysql支持sqlserver嗎?
- About authentication services (front and back, login, registration and exit, permission management)
- Multi person online anonymous chat room / private chat room source code / support the creation of multiple chat rooms at the same time
- [positioning in JS]
- Yuancosmic ecological panorama [2022 latest]
- 英语必备词汇3400
- [learning notes] month end operation -gr/ir reorganization
- 输入的查询SQL语句,是如何执行的?
- Huawei MPLS experiment
猜你喜欢
postman和postman interceptor的安装
特殊版:SpreadJS v15.1 VS SpreadJS v15.0
Share the newly released web application development framework based on blazor Technology
DMX parameter exploration of grandma2 onpc 3.1.2.5
面试汇总:这是一份全面&详细的Android面试指南
The perfect car for successful people: BMW X7! Superior performance, excellent comfort and safety
[groovy] loop control (number injection function implements loop | times function | upto function | downto function | step function | closure can be written outside as the final parameter)
[105] Baidu brain map - Online mind mapping tool
Operation flow of UE4 DMX and grandma2 onpc 3.1.2.5
一文带你了解BI的前世今身与企业数字化转型的关系
随机推荐
Clickhouse synchronization MySQL (based on materialization engine)
Web components series (VII) -- life cycle of custom components
New interesting test applet source code_ Test available
ICSI213/IECE213 Data Structures
DECLARE_ WAIT_ QUEUE_ HEAD、wake_ up_ Interruptible macro analysis
Solve the problem that sqlyog does not have a schema Designer
Cette ADB MySQL prend - elle en charge SQL Server?
Talk about the SQL server version of DTM sub transaction barrier function
[an Xun cup 2019] not file upload
[groovy] string (string injection function | asBoolean | execute | minus)
In MySQL Association query, the foreign key is null. What if the data cannot be found?
特殊版:SpreadJS v15.1 VS SpreadJS v15.0
[groovy] groovy environment setup (download groovy | install groovy | configure groovy environment variables)
[groovy] string (string type variable definition | character type variable definition)
线程基础知识
Why is there a reincarnation of 60 years instead of 120 years in the tiangan dizhi chronology
Installation of postman and postman interceptor
[positioning in JS]
SQL performance optimization skills
VM in-depth learning (XXV) -class file overview