web自动化测试系列之selenium的运行原理和常用方法介绍(二)

这篇具有很好参考价值的文章主要介绍了web自动化测试系列之selenium的运行原理和常用方法介绍(二)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

web自动化测试系列之selenium的运行原理和常用方法介绍(二),测试工程师,自动化测试,技术分享,前端,selenium,测试工具,软件测试,接口测试,自动化测试

在上文中我们编写了一段简单的代码 ,可以驱动浏览器访问百度并搜索关键字 。这里我们再把这段代码再拿来加以说明 。

# 1. 导包
from selenium import webdriver
import time
​
# 2. 创建浏览器驱动
driver = webdriver.Chrome()
driver.maximize_window()
​
# 3. 打开web页面,输入百度
driver.get("http://www.baidu.com")
​
time.sleep(3)       # 休眠3秒
​
# 4. 在浏览器地址栏中输入关键字 :python
driver.find_element_by_id("kw").send_keys("python")
​
# 5. 点击按钮 :百度一下
driver.find_element_by_id("su").click()
​
# 6. 暂停
time.sleep(5)
​
# 7. 关闭浏览器
driver.quit()

如果你是初次接触它 ,你可能会想 ,这段代码是怎么驱动浏览器运行的了 ?要知道这个问题的答案 ,就必须搞清楚以下3个问题 。

  1. 它(selenium)的运行原理 .
  2. 所调用方法的含义
  3. 它是如何准确的点击按钮和进行输入框输入的 ?

本篇幅只聊前两个问题 。

1.selenium的运行原理

下面这张图是selenium官网提供的一张运行原理图 ,比较清楚地说明了它的运行原理 。

web自动化测试系列之selenium的运行原理和常用方法介绍(二),测试工程师,自动化测试,技术分享,前端,selenium,测试工具,软件测试,接口测试,自动化测试

具体步骤是 :

  1. 当使用 Selenium启动浏览器器时,后台会同时启动基于 WebDriver Wire 协议的 Web Service 作为 Selenium 的 Remote Server,并与浏览器器绑定。之后,Remote Server 就开始监听 Client 端的操作请求;
  2. 执⾏行行测试时,测试⽤用例例会作为 Client 端,将需要执⾏行行的⻚页⾯面操作请求以 Http Request 的⽅方式发送给 Remote Server 。 该 Http Request 的 body,是以 WebDriver Wire 协议规定的 JSON 格式来描述需要浏览器器执⾏行行的具体操作;
  3. Remote Server 接收到请求后,会对请求进⾏行行解析,并将解析结果发给WebDriver,由WebDriver 实际执⾏行行浏览器器的操作;
  4. WebDriver 可以看做是直接操作浏览器器的原⽣生组件(Native Component),所以搭建测试环境时,通常都需要先下载浏 览器器对应的 WebDriver。
现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:691998057【暗号:csdn999】

web自动化测试系列之selenium的运行原理和常用方法介绍(二),测试工程师,自动化测试,技术分享,前端,selenium,测试工具,软件测试,接口测试,自动化测试

 

你可能不太理解Remote Server 是啥? WebDriver又是啥 ? 接下来我们把这几个关键术语进行解释。

关键字 说明 备注
Test Case(Client) 编写的python代码 当然它也支持其它语言,这里相当于客户端
Remote Server 就是selenium selenium里有个类叫WebDriver ,负责接收client端的请求,解析后转发给浏览器驱动。
WebDriver 浏览器驱动文件,名称为:chromedriver.exe 接受Remote Server请求,并请求操作浏览器
Web Browser 浏览器

所以 ,以上代码中的这句driver = webdriver.Chrome() ,就已经启动了Remote Server ,而后的代码都将通过Remote Server解析后发送给浏览器驱动 。

2.常用方法介绍

以上代码中通过driver调用的方法都属于selenium的方法 ,其中它就是如下这些 。

web自动化测试系列之selenium的运行原理和常用方法介绍(二),测试工程师,自动化测试,技术分享,前端,selenium,测试工具,软件测试,接口测试,自动化测试

以上除了find_element_by_id() 这个方法没有介绍外(单独介绍),代码中的方法都已提到 。

最后通过一张图来总结它的属性和方法 。

web自动化测试系列之selenium的运行原理和常用方法介绍(二),测试工程师,自动化测试,技术分享,前端,selenium,测试工具,软件测试,接口测试,自动化测试

下面是配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

web自动化测试系列之selenium的运行原理和常用方法介绍(二),测试工程师,自动化测试,技术分享,前端,selenium,测试工具,软件测试,接口测试,自动化测试

最后: 可以在公众号:程序员小濠 ! 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!文章来源地址https://www.toymoban.com/news/detail-847945.html

到了这里,关于web自动化测试系列之selenium的运行原理和常用方法介绍(二)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 自动化测试之web自动化(Selenium)

     🔥 交流讨论: 欢迎加入我们一起学习! 🔥 资源分享 : 耗时200+小时精选的「软件测试」资料包 🔥  教程推荐: 火遍全网的《软件测试》教程   📢 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! yycnblog 自动化测试概念:让程序代替人为去验证程序功能的过程,本

    2024年03月15日
    浏览(51)
  • Web自动化测试--selenium

     🔥 交流讨论: 欢迎加入我们一起学习! 🔥 资源分享 : 耗时200+小时精选的「软件测试」资料包 🔥  教程推荐: 火遍全网的《软件测试》教程   📢 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! Selenium 是支持web浏览器自动化的一系列工具和库的综合项目,能够进

    2024年03月14日
    浏览(48)
  • selenium - web 自动化测试

    有效的减少人力的消耗, 同时提高生活的质量. 通过自动化测试有效减少人力的投入, 同时提高了测试的质量和效率. 测试人员有个环节叫做回归测试. 回归测试 : 对历史版本, 历史功能进行测试, 保证功能都是符合要求的. 为什么需要回归测试历史版本 ? 因为新版本和旧版本一般

    2024年02月04日
    浏览(28)
  • 自动化测试 selenium(测试系列7)

    目录 前言: 1.什么是自动化测试 2.Selenium是什么 3.Selenium原理 4.Selenium+Java环境搭建 5.Selenium常用的API使用 5.1定位元素findElement 5.1.1css选择器 5.1.2id选择器 5.1.3类选择器 5.1.4xpath选择器 5.2操作测试对象 5.2.1click点击对象 5.2.2sendKeys在对象上模拟按键输入 5.2.3clear清除对象输入的文本

    2024年02月15日
    浏览(25)
  • 自动化测试 - Web自动化测试原理

    目前市面上有很多Web UI自动化测试框架,比如WatiN, Selinimu,WebDriver,还有VS2010中的Coded UI等等. 这些框架都可以操作Web中的控件,模拟用户输入,点击等操作,实现Web自动化测试。其实这些工具的原理都一样,都是通过调用IE COM接口和HTML DOM 对IE浏览器以及WEB测试对象的操作。

    2024年01月16日
    浏览(35)
  • web自动化系列selenium模拟按键操作

    一、按键操作 通过对监听键盘输入的元素发送键盘按钮指令 常用键盘按键 代码演示

    2024年02月06日
    浏览(32)
  • 【自动化测试】基于Selenium + Python的web自动化框架

    Selenium是一个基于浏览器的自动化工具,她提供了一种跨平台、跨浏览器的端到端的web自动化解决方案。Selenium主要包括三部分:Selenium IDE、Selenium WebDriver 和Selenium Grid:  1、Selenium IDE:Firefox的一个扩展,它可以进行录制回放,并可以把录制的操作以多种语言(例如java,p

    2024年02月07日
    浏览(44)
  • selenium-web自动化测试

    步骤一:查看自己的谷歌浏览器版本(浏览器版本和驱动版本一定要对应) 步骤二:下载对应的驱动包, 下载路径 : ChromeDriver - WebDriver for Chrome - Downloads (chromium.org)   注意步骤二中, 只要保持 115.0.5790 一致即可, 最后一位数字我选择102(网页110下载不了所以选择102) 步骤三:解

    2024年02月12日
    浏览(31)
  • Selenium Web自动化测试框架实践

    目录        前言: 项目背景 功能实现 项目架构 浏览器driver定义 用例运行前后的环境准备工作 工具方法模块 Pageobject页面对象封装 执行测试用例        前言:          Selenium是一个基于Web的自动化测试框架,可以通过模拟用户在浏览器上的操作,来自动化地测试Web应

    2024年02月10日
    浏览(36)
  • Web自动化测试——selenium篇(一)

    在学习 Web 自动化测试的过程中,selenium 是其中的常用工具。除了其开源免费,包含丰富的 API 以外,它还支持多浏览器,多系统,多语言等等优点 这里将使用 Java 语言,在 谷歌浏览器(Chrome) 下来进行 selenium 工具的使用。 想要开展自动化测试,首先要保证环境已经部署到

    2024年01月23日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包