【Selenium】selenium介绍及工作原理

news2025/1/17 5:51:30

一、Selenium介绍

用于Web应用程序测试的工具,Selenium是开源并且免费的,覆盖IE、Chrome、FireFox、Safari等主流浏览器,通过在不同浏览器中运行自动化测试。支持Java、Python、Net、Perl等编程语言进行自动化测试脚本编写。

官网地址:Selenium

二、Selenium家族

  • Selenium IDE,是Firefox/Chrome浏览器的扩展插件,支持用户录制和回放测试

  • Selenium WebDriver,提供了各种语言环境的API来支持更多控制权和编写符合标准软件开发实践的应

用程序。

  • SeleniumGrid,分布式自动化工具,可以在多个测试环境中以并发的方式执行测试脚本,实现测试脚本的并发执行,缩短大量的测试脚本的执行时间

selenium是一个用于Web应用程序自动化测试工具。selenium测试直接运行在浏览器中,就像真正的用户在操作一样
主要功能包括:
  • 测试与浏览器的兼容性——测试你的应用程序是否能够很好的工作在不同的浏览器和操作系统上
  • 测试系统功能——创建回归测试检验软件功能和用户需求

三、Selenium原理 

自动化测试代码发送HTTP请求给浏览器驱动,驱动解析代码,然后发送给浏览器,浏览器接受驱动发来的指令,完成操作

驱动和浏览器通信:

对于每一条selenium脚本,一个http请求就会被创建并且发送给浏览器的驱动;

浏览器驱动中包含了一个HTTP Server,用来接收这些http请求;

HTTP Server接收到请求后根据请求来具体操控对应的浏览器;

浏览器执行具体的测试步骤,浏览器将步骤执行结果返回给HTTP Server;

HTTP Server 又将结果返回给selenium的脚本,如果是错误代码,我们就会在控制台看到对应的错误信息

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1496631.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ROS从入门到精通4-2:Docker安装ROS、可视化仿真与终端复用

目录 0 专栏介绍1 Docker安装ROS2 Docker可视化仿真2.1 显示配置2.2 启动容器 3 终端复用工具3.1 session操作3.2 window操作3.3 pane操作3.4 其他操作 0 专栏介绍 本专栏旨在通过对ROS的系统学习,掌握ROS底层基本分布式原理,并具有机器人建模和应用ROS…

Outlook邮箱后缀如何修改?怎么添加后缀?

Outlook邮箱后缀是什么?Outlook邮箱后缀可以改吗? Outlook邮箱广泛应用于企业和个人用户之间。在使用过程中,有时我们可能会因为某些原因需要修改Outlook邮箱后缀。那么,Outlook邮箱后缀如何修改呢?下面,A…

应用程序并行配置不正确怎么办?

当出现应用程序的并行配置不正确的问题时,通常也无法打开目标应用程序了,应该如何解决此问题呢?下面我们一起来了解一下。 1、重装出现问题的应用 如果是某个应用程序出现问题,那么卸载它再进行重装是很好的方法。 具体步骤&…

手写分布式配置中心(三)增加实时刷新功能(短轮询)

要实现配置自动实时刷新,需要改造之前的代码。代码在https://gitee.com/summer-cat001/config-center​​​​​​​ 服务端改造 服务端增加一个版本号version,新增配置的时候为1,每次更新配置就加1。 Overridepublic long insertConfigDO(…

技术指标和振荡器大全(二)

原文:stockcharts.com/school/doku.php?idchart_school:technical_indicators 译者:飞龙 协议:CC BY-NC-SA 4.0 成交量加权平均价格(VWAP) 目录 成交量加权平均价格(VWAP) 介绍 Tick 与 Minu…

项目中spring security与jwt.腾讯面试分享

写这篇文章是为了记录我面试pcg时平时没有留意或者钻研的地方。 面试是根据项目问的问题: 为什么采用jwt存储token? 我的项目是微服务项目,里面部署了资源服务和认证服务,这里选择jwt作为token一方面是可以存储用户的信息&#…

【DPDK】基于dpdk实现用户态UDP网络协议栈

文章目录 一.背景及导言二.协议栈架构设计1. 数据包接收和发送引擎2. 协议解析3. 数据包处理逻辑 三.网络函数编写1.socket2.bind3.recvfrom4.sendto5.close 四.总结 一.背景及导言 在当今数字化的世界中,网络通信的高性能和低延迟对于许多应用至关重要。而用户态网…

C++指针(四)

个人主页:PingdiGuo_guo 收录专栏:C干货专栏 前言 相关文章:C指针(一)、C指针(二)、C指针(三) 本篇博客是介绍函数指针、函数指针数组、回调函数、指针函数的。 点赞破六…

文件批量重命名神器:按长度与区间智能管理,让文件整理更高效!

在数字化时代,电脑中堆积如山的文件常常让我们头疼不已。命名不规范、杂乱无章的文件不仅占用了大量的存储空间,更在关键时刻让我们难以迅速找到所需内容。现在,有了这款文件批量改名神器,一切烦恼将烟消云散! 首先&a…

时隔n年再度会看Vue,Git

时隔n年再度会看Vue,Git 曾经沧海难为水,除却巫山不是云。不知道这句话用在这里合不合适,好多东西在记忆中都淡化了。但是互联网确是有记忆的。研究以前项目的时候,翻看到gitee码云上托管的项目,就像是自己的孩子重新又回来了一样…

观其大略之HybridCLR学习笔记

问题背景 1 现有热更方案的开发效率、性能没有到达极限,还有提升的空间 2 ios多平台政策导致热更新受限问题,ios禁止jit。根据我查找的资料,ios的代码段启动的时候就确定了,不能增加新的代码段。IOS封了内存(或者堆&…

如何摆脱水印困扰?三款神器助您清爽无烦恼!

水印常常成为我们图片处理的一大难题,让我们苦恼不已。那么,如何能轻松摆脱这些烦人的水印呢?本文将向您推荐三款强大的去水印工具,让您清爽无烦恼,图片重焕光彩! 1. 水印云 如何快速而准确地去除各类水印…

Stable Diffusion 解析:探寻 AI 绘画背后的科技神秘

AI 绘画发展史 在谈论 Stable Diffusion 之前,有必要先了解 AI 绘画的发展历程。 早在 2012 年,华人科学家吴恩达领导的团队训练出了当时世界上最大的深度学习网络。这个网络能够自主学习识别猫等物体,并在短短三天时间内绘制出了一张模糊但…

【RK3288 Android6, T8PRO 快捷按键 gpio 配置上拉输入】

文章目录 【RK3288 Android6, T8PRO 快捷按键 gpio 配置上拉输入】需求开发过程尝试找到没有用的上拉gpio尝试修改pwm1的gpio的默认上拉模式 改动 【RK3288 Android6, T8PRO 快捷按键 gpio 配置上拉输入】 需求 T8pro想要模仿T10 的 快捷按键&#xff…

嵌入式开发的常用软件、学习资源网站推荐

1、软件推荐 1.1、文本编辑软件 ——Notepad 1、适合编写和查看文本文件,也可以安装插件来查看二进制文件、对比文件 2、参考博客:《Notepad实用小技巧》; 1.2、PDF文件阅读软件——福昕PDF阅读器 福昕PDF阅读器,在官网就可以下载…

电商店群系统的搭建需要用到的官方接口如何申请?

电商电子商务企业往往都会需要再很多平台上面铺货,上传商品。 高科技的今天,我们已经不需要手动一个个品去上传了。那通过官方接口,如何实现快速铺货呢? 1688官方开放平台的API接口类型众多,并不是所有的企业都能申请…

springboot3.x集成nacos踩坑,并实现多环境配置

一、nacos安装部署 springboot3.x集成Nacos首先需要将Nacos从1.x升级到2.x,建议直接安装2.x版本,手动将1.x的配置信息迁移到2.x中,先并行一段时间,待全部迁移完成稳定运行之后再停掉1.x,升级和安装、操作请查看官方文…

HBuilder X删除之前登录的账号

打开目录 C:\Users\Administrator\AppData\Roaming\HBuilder X 用 HBuilder X 打开文件 prefs 将账号删除 保存文件 重启HBuilder X即可

开发手札:unity2022+vscode1.87联合开发

不得不说,时间的力量是很强大的,同时熵增理论适用于任何地方。 在现在的公司干了五年多了,五年前配置的内网开发机,i7 870016g1t hddgtx1080已经卡爆了,特别是硬盘掉速严重,开机开软件没有一两分钟都…

班主任管理班级的策略与措施

在教育的世界里,班主任不仅是知识的传递者,更是学生心灵的引路人。那么,如何在这个充满挑战和机遇的岗位上,舞动管理的翅膀,让班级飞得更高更远呢? 深入了解学生。这不仅仅是了解学生的姓名、成绩&#xff…