关于selenium自动化中,Webdriver的原理以及工作流程

Posted 把苹果咬哭

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于selenium自动化中,Webdriver的原理以及工作流程相关的知识,希望对你有一定的参考价值。

原文地址:https://www.cnblogs.com/imyalost/p/7242747.html#4109245
作者:老 张

1.关于Webdriver

设计模式:按照Server-Client的经典设计模式设计;
Server端:即Remote Server(远程服务器),可以是任意的浏览器,当脚本启动浏览器时,该浏览器就是Remote Server,它的职责是等待Client发送请求并做出响应;
Client端:我们的测试代码中的一些行为是以HTTP请求的方式发送给被测试浏览器——Remote Server,Remote Server接受请求,执行相应操作,并在Response中返回执行状态、返回值等信息;

2.WebDriver工作流程

  1. WebDriver启动目标浏览器,并绑定至指定端口,启动的浏览器实例将作为WebDriver的Remote Server;

  2. Client端通过CommandExcuter发送HTTPRequest给Remote Server的侦听端口(通信协议:the webdriver wire protocol);

  3. Remote Server需要依赖原生的浏览器组件(比如:chromedriver.exe)来转化浏览器的native调用;

3.总结

selenium UI自动化三要素

  • client: 测试代码
  • server: 浏览器
  • 中间件: 浏览器驱动(chromdriver.exe,geckodriver.exe等等)

以上是关于关于selenium自动化中,Webdriver的原理以及工作流程的主要内容,如果未能解决你的问题,请参考以下文章

Selenium 自动化测试之道--学习总结-WebDriver

Selenium(Webdriver)自动化测试常问到的问题解答(转自:潜龙0318)

关于web程序测试,Selenium 2.0录制工具,以及WebDriver编写的测试类,能测试出啥效果。属于哪种测试。

关于在selenium 中 webdriver 截图操作

关于自动化测试学习 selenium

selenium-webdriver(python) (十四) -- webdriver原理(转载虫师自动化)