问答媒体

 找回密码
 立即注册
快捷导航
搜索
热搜: 活动 交友 discuz
查看: 93|回复: 1

【Selenium】基本原理介绍

[复制链接]

1

主题

2

帖子

4

积分

新手上路

Rank: 1

积分
4
发表于 2022-11-27 16:10:21 | 显示全部楼层 |阅读模式
本文为在霍格沃兹测试开发学社的学习经历分享,写出来分享给大家,希望有志同道合的小伙伴可以一起交流技术,一起进步~

Selenium 是一个 Web 应用的自动化框架。主要应用于 Web 应用程序的自动化测试。
通过它,测试工程师可以写出自动化程序,模拟人在浏览器里操作 Web 界面。 比如点击界面按钮,在文本框中输入文字等操作。
除此以外,它还支持所有基于 Web 的管理任务自动化。


Selenium 的特点


  • 开源免费:基于这点,能够吸引大部分公司愿意使用它来作为自动化测试的框架
  • 多浏览器支持:支持 Chrome、Firefox、IE、Edge、Safari 等浏览器
  • 多平台支持:支持 Linux、Windows、Mac 系统平台
  • 多语言支持:支持 Java、Python、Ruby、JavaScript、C++ 等开发语言
  • 对 Web 页面有良好的支持
  • 简单、灵活:使用时调用的 API 简单,只需要使用开发语言导入调用即可
  • 支持分布式测试:使用 Selenium Grid
  • 支持录制、回放与脚本生成:使用 Selenium IDE

Selenium 的历史版本

Selenium 经历了3个版本,Selenium 1.X、Selenium 2.X 以及目前的 Selenium 3.X。
其中 Selenium 1.X 与 Selenium 2.X 最大的区别在于 WebDriver。 WebDriver 曾经是 Selenium 的竞争对手,能弥补 Selenium 1.X 存在的不足。
而 Selenium 2.X 则是 Selenium 与  WebDriver 两个项目的合并,也就是说,Selenium 2.X = Selenium 1.X +  WebDriver。
直到现在,使用最为广泛的是 Selenium 3.X,它最大的变化在于:

  • 去掉了 Selenium RC
  • Firefox 浏览器拥有了独立的驱动——geckodriver
  • Edge 浏览器与 Safari 浏览器原生驱动的支持
Selenium 的工作原理



从上图可以看出:
自动化脚本需要调用客户端库,在 Python 环境中安装 Selenium 库 非常简单,使用 pip install selenium 即可。
脚本程序的自动化请求,都是通过客户端库里的 API 发送给浏览器驱动 -- WebDriver。再由 WebDriver 来实际执行浏览器的操作。
比如,模拟用户点击界面按钮, 自动化脚本作为客户端,调用客户端库内 click() 的方法,将 点击元素 的请求给到指定的浏览器驱动 WebDriver, 再由 WebDriver 将这个请求转发给浏览器。

总结




推荐阅读:
只需Docker,环境问题再也不是测开路上的『坑』_霍格沃兹测试开发学社的博客-CSDN博客
回复

使用道具 举报

0

主题

2

帖子

4

积分

新手上路

Rank: 1

积分
4
发表于 2025-4-22 05:24:00 | 显示全部楼层
小白一个 顶一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver| 手机版| 小黑屋| 问答媒体

GMT+8, 2025-7-8 02:49 , Processed in 0.098958 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2020, LianLian.

快速回复 返回顶部 返回列表