当前位置:网站首页>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.…….
边栏推荐
- [2022 repair version] community scanning code into group activity code to drain the complete operation source code / connect the contract free payment interface / promote the normal binding of subordi
- ICSI213/IECE213 Data Structures
- 英语必备词汇3400
- [software reverse - basic knowledge] analysis method, assembly instruction architecture
- Learning notes of raspberry pie 4B - IO communication (I2C)
- Ubantu disk expansion (VMware)
- Clean up PHP session files
- 反絮凝剂-氨碘肽滴眼液
- English essential vocabulary 3400
- speed or tempo in classical music
猜你喜欢
一文带你了解BI的前世今身与企业数字化转型的关系
[2022 repair version] community scanning code into group activity code to drain the complete operation source code / connect the contract free payment interface / promote the normal binding of subordi
It took two nights to get Wu Enda's machine learning course certificate from Stanford University
Operation flow of UE4 DMX and grandma2 onpc 3.1.2.5
Yuancosmic ecological panorama [2022 latest]
Thread Basics
The perfect car for successful people: BMW X7! Superior performance, excellent comfort and safety
企业级:Spire.Office for .NET:Platinum|7.7.x
MindFusion.Virtual Keyboard for WPF
【软件逆向-基础知识】分析方法、汇编指令体系结构
随机推荐
Kubernetes - identity and authority authentication
JWT vulnerability recurrence
[summary of two registration methods]
Difference between MotionEvent. getRawX and MotionEvent. getX
[groovy] groovy environment setup (download groovy | install groovy | configure groovy environment variables)
程序员的视力怎么样? | 每日趣闻
040. (2.9) relieved
Web components series (VII) -- life cycle of custom components
Ubantu disk expansion (VMware)
Basic knowledge of tuples
KVM virtualization
Use of kubesphere configuration set (configmap)
C file in keil cannot be compiled
@Transactional 注解导致跨库查询失效的问题
FBO and RBO disappeared in webgpu
[web Audit - source code disclosure] obtain source code methods and use tools
Delphi read / write JSON format
Zero foundation uses paddlepaddle to build lenet-5 network
Binary heap implementation (priority queue implementation)
【做题打卡】集成每日5题分享(第三期)