面试题——selenium原理解析、appium原理解析

这里写目录标题

  • 一、selenium原理解析
    • 1、目的
    • 2、技术点
    • 3、Selenium 介绍
    • 4、Selenium 自动化测试
    • 5、为什么能够支持这么多种浏览器?
    • 6、Selenium 工作原理
  • 二、appium原理解析
    • 1、目的
    • 2、技术点
    • 3、Appium 介绍
    • 4、Appium 工作原理

一、selenium原理解析

1、目的

了解是否使用过 selenium 进行 web 自动化测试
为什么 Selenium 支持多浏览器
是否了解 Selenium 工作原理

2、技术点

selenium 有哪几部分组成
源码角度分析 selenium 工作原理
使用了 WebDriver Wire Protocol 协议

3、Selenium 介绍

官网:https://www.selenium.dev/
WebDriver 用于操作浏览器
Selenium IDE: 是用来录制回放测试用例的工具
Selenium Grid: 分布式并发执行用例

4、Selenium 自动化测试

Selenium 用于 Web 应用程序的 UI 自动化测试工具
可以跨平台(Mac/Linux/Windows)
支持所有主流浏览器,包括(Chrome/Chromium、 Firefox、 Internet Explorer、 Edge、 Opera 和 Safari)

5、为什么能够支持这么多种浏览器?

Selenium WebDriver 是典型的 Server-Client 模式
浏览器厂商会提供驱动浏览器操作的中间件(WebDriver), 通过这个中间件可以直接驱动浏览器执行各种操作,比如点击,滑动, 输入,下拉等等

6、Selenium 工作原理

编写测试用例——》执行测试脚本——》后台启动一个服务(RemoteServer)绑定到某一个浏览器上,RemoteServer会一直监听代码发过来的请求(通过JsonWire协议发送请求)——》将收到的请求解析转发给浏览器驱动(Chromedriver)(简称中间件)——》浏览器驱动再次驱动对应的浏览器,执行对应的操作(点击、滑动、输入等)(不同的浏览器、不同的浏览器版本要和浏览器驱动对应)——》执行完操作之后,将结果依次的再发送给客户端
在这里插入图片描述

二、appium原理解析

1、目的

想了解你有没有用过 Appium 测试框架
常用的 API 是否熟悉,移动端的特殊组件,特殊操作是否能处理
是否看过源码
是否了解 Appium 框架底层工作原理

2、技术点

常用的 appium api
底层通讯协议
Appium 底层框架原理

3、Appium 介绍

官网:http://appium.io/
跨语言:Java、Python、nodejs 等
跨平台

端:Android、iOS
PC 端:Windows、Mac

底层多引擎可切换
生态丰富,社区强大

4、Appium 工作原理

client端:编写测试用例
server端:在运行测试用例脚本的时候需要提前启动appium server端,它会监听客户端发送过来的请求(默认端口为4723),在请求过程中遵循一种webdriver协议,在第一次通讯的时候,会传递一个 DesireCapability 对象,告诉 AppiumServer,被测试设备的一些信息,DesireCapability 对象中包含(platformName、platformVersion、deviceName等等)。第一次请求完成,会创建一个 session 对象,随后会使用这个 session 对象完成对设备的操作(比如点击,输入等)。
手机端:最后将执行结果返回给server端,server端再将结果返回给client端

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

配置JDK环境变量

文章目录 查看电脑系统下载及安装JavaSE配置系统环境变量测试环境变量配置是否成功。 查看电脑系统 运行输入框中输入:control 下载及安装JavaSE 这个从网上下载就行,jdk-8u141-windows-x64.exe,不提供下载方式了。 主要讲解安装过程&a…

洗稿用什么软件-洗稿软件免费

洗稿文章的主要优势 洗稿文章的主要优势在于提高文章的质量和效率。以下是洗稿文章的几个主要优势: 优化结构和语言 洗稿可以删除冗余、无用和重复的内容,同时对文章的结构和语言进行优化,提高文章的可读性和吸引力。这可以使文章更加专业…

操作系统内存管理笔记

计算机的硬件设备 计算机的硬件设备中,有三个部件最为关键,它们分别是中央处理器CPU、内存和I/O控制芯片。 系统软件 系统软件可以分成两块,一块是平台性的,比如操作系统内核、驱动程序、运行库和数以千计的系统工具&#xff1…

单片机的电子秤方案设计

电子秤是一种利用电子技术实现重量计量的设备,广泛应用于商业、工业、医疗、科学研究等领域。电子秤是一种高精度的计重装置,不仅精度高,而且使用方便、稳定可靠。下面,我们从结构设计、工作原理、功能参数、产品种类四个方面来介…

cout源码浅析

目录 cout源码浅析 那么对于没有定义在这之中的要怎么办呢? 实际使用 结语 首先来看我从cplusplus中截取的这张图: 注意最下面这一行字。cout其实是ostream的一个标准对象object。而上面则演示了一些继承关系。 好的,理解了之后&#xf…

造轮子系列】面试官问:你能手写Vuex吗(一)?

大厂面试题分享 面试题库 前后端面试题库 (面试必备) 推荐:★★★★★ 地址:前端面试题库 web前端面试题库 VS java后端面试题库大全 Vuex 是 Vue.js 的状态管理模式,它主要解决了组件之间共享状态时的问题。在本文…

【markdown工具配合图床】PicGo图床配置教程,一秒读懂配置

前言 看到这篇文章的大佬,我默认大家都会配置git,已经配置好ssh公钥。 此时你看到的这篇文章就是基于markdown工具(VSCode,Typora)编写的。 PicGo作为图床转换工具,并配合gitee作为图片服务器&#xff0…

搭建Serv-U FTP服务器共享文件并外网远程访问「无公网IP」

文章目录 1. 前言2. 本地FTP搭建2.1 Serv-U下载和安装2.2 Serv-U共享网页测试2.3 Cpolar下载和安装 3. 本地FTP发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4. 公网访问测试5. 结语 转载自内网穿透工具的文章:使用Serv-U搭建FTP服务器并公网访问【内网穿透】 1. 前言…

【Vue面试题】Vue2.x生命周期?

文章目录 1.有哪些生命周期(系统自带)?beforeCreate( 创建前 )created ( 创建后)beforeMount (挂载前)mount (挂载后)beforeUpdate (更新前)updated (更新后)beforeDestroy(销毁前)destroy(销毁后&#xf…

vue3:自定义指令

一、理解vue指令 1.1、指令 在 vue 中提供了一些对于页面和数据更为方便的输出&#xff0c;这些操作就叫做指令&#xff0c;以 v-xxx 表示&#xff0c;比如 html 页面中的属性 <div v-xxx ></div>。自定义指令很大程度提高了开发效率&#xff0c;提高了工程化水平…

git简介和使用、基础命令

文章目录 一、git的安装与配置二、Git工作区原理三、Git的使用和仓库的创建四、Git的常用操作五、配置公钥六、IDEA中配置Git 一、git的安装与配置 https://tortoisegit.org/ 下载对应版本安装即可 注意&#xff1a;配置中输入邮箱和密码一定要和自己的git账户一致 git的配置…

面试华为测试岗,收到offer后我却毫不犹豫拒绝了....

我大学学的是计算机专业&#xff0c;毕业的时候&#xff0c;对于找工作比较迷茫&#xff0c;也不知道当时怎么想的&#xff0c;一头就扎进了一家外包公司&#xff0c;一干就是2年。我想说的是&#xff0c;但凡有点机会&#xff0c;千万别去外包&#xff01; 在深思熟虑过后&am…

【模拟IC学习笔记】 反馈

反馈的作用&#xff1a;增益灵敏度降低 采用开环的方式实现一个精确的增益比较困难&#xff0c;但是可以实现高增益。 增益灵敏度衍生出来的另外两个特点 1、增加系统带宽。 2、改变输出阻抗&#xff0c;提高驱动能力。 反馈的作用&#xff1a;增加带宽 带宽的增加来源于…

ChatGPT实现markdown 格式与 emoji 表情

markdown 格式与 emoji 表情 书写文章时&#xff0c;巧妙的使用一些小图标&#xff0c;可以给文章增加不少的灵动感&#xff0c;读者也会感觉更加轻松。恰当的图标也能增进读者对内容的理解。ChatGPT 目前不能直接联网&#xff0c;但可以使用 emoji 表情文字来达到类似的效果。…

C++之数据对齐

目录 关于对齐数据对齐结构体对齐原则原理分析 关于对齐 对齐方式&#xff1a;表示的是一个类型的对象存放的内存地址应满足的条件好处&#xff1a;对齐的数据在读写上有性能优势对于不对齐的结构体&#xff0c;编译器会自动补齐以提高CPU的寻址效率 数据对齐 四个函数/描述…

机器学习实战:带你进入AI世界!

机器学习是人工智能领域的一个重要分支&#xff0c;可以帮助我们从大量数据中发现规律&#xff0c;进行预测和分类等任务。然而&#xff0c;想要真正掌握机器学习算法&#xff0c;并将其应用到实际问题中&#xff0c;还需要进行大量的实战练习。 本文将介绍几个常见的机器学习实…

6、Flutterr聊天界面网络请求

一、准备网络数据 1.1 数据准备工作 来到网络数据制造的网址,注册登录后,新建仓库,名为WeChat_flutter;点击进入该仓库,删掉左侧的示例接口,新建接口. 3. 接着点击右上角‘编辑’按钮,新建响应内容,类型为Array,一次生成50条 4. 点击chat_list左侧添加按钮,新建chat_list中的…

PAT A1032 Sharing

1032 Sharing 分数 25 作者 CHEN, Yue 单位 浙江大学 To store English words, one method is to use linked lists and store a word letter by letter. To save some space, we may let the words share the same sublist if they share the same suffix. For example, l…

如何利用ChatGPT进行论文润色-ChatGPT润色文章怎么样

ChatGPT润色文章怎么样&#xff1f; ChatGPT可以润色文章&#xff0c;使用其润色功能可以为用户提供更加整洁、清晰、文采动人的文本。但需要注意以下几点&#xff1a; 需要保持文本的一致性和完整性。当使用ChatGPT进行润色时&#xff0c;需要注意保持文本的一致性和完整性。…

和月薪5W的聊过后,才发现自己一直在打杂···

前几天和一个朋友聊面试&#xff0c;他说上个月同时拿到了腾讯和阿里的offer&#xff0c;最后选择了阿里。 我了解了下他的面试过程&#xff0c;就一点&#xff0c;不管是阿里还是腾讯的面试&#xff0c;这个级别的程序员&#xff0c;都会考察项目管理能力&#xff0c;并且权重…