web ui自动化测试--元素操作

一、介绍

什么是web ui自动化测试
1、通过代码来模拟人的手工操作,执行测试内容
2、自动化是为了代替重复的手工操作,提高测试效率

ui自动化的价值:
1、回归速度的对比,以前进行全量回归测试需要x天,现在有没有减少
2、负责功能测试的同事,是不是有更多的时间测试新需求了
3、自动化测试不是为了发现bug,而是为手工测试节省回归时间

ui自动化的原理(selenium与webdriver):
selenium是一个用于web测试的工具,测试运行在浏览器当中,就像真的用户在操作浏览器一样,支持所有的主流浏览器;
webdriver对浏览器原生的api进行封装,使用这套api可以操作浏览器的开启、关闭、刷新、操作页面元素、截屏等。

我们使用selenium进行自动化,主要涉及三个方面:
1、测试脚本,就是你我写的代码
2、浏览器,目前支持所有的主流浏览器
3、浏览器驱动,充当翻译官的角色
脚本将指令发给驱动,驱动操作浏览器,浏览器执行后将结果返回给驱动,驱动再告诉脚本

几乎所有项目适合接口自动化,但不是所有项目都适合ui自动化,哪些项目适合ui自动化

  • 需求稳定的,不会频繁变更的
  • 经常需要回归验证的
  • 前端界面稳定的
  • 大量的重复任务
  • 项目长期存在
  • 项目进度压力不大
  • 测试人员具备足够强的代码能力

二、元素操作

1、元素八种定位方式

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

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

相关文章

Java面试题总结15之简述你对RPC,RMI的理解

RPC:在本地调用远程的函数,远程过程调用,可以跨语言实现,httpClient RMI:远程方法调用,Java中用于实现RPC的一种机制,RPC的Java版本是J2EE的网络调用机制,跨JVM调用对象的方法&…

Redis-2 Redis基础数据类型与基本使用

高级Redis应用进阶 一站式Redis解决方案-Redis-2 Redis基础数据类型与基本使用 源代码在GitHub - 629y/food-social-contact-parent: redis项目-美食社交APP 1. Redis基本数据类型 1.字符串(strings) set username zhangsan get username mset age 18 …

JAVA代理模式梳理

什么是代理模式 代理模式:为其他对象提供一种代理,用以控制对这个对象的访问; 我们使用代理对象,可以在不修改目标对象的基础上,增强主业务逻辑;比如说我们的系统中有一个登录接口,我们要对这个…

在数据对象中增加新的属性值,数据更新,视图不更新问题

一、原始数据 dataTable:[{aa:111} ]然后我需要再给他一个对象属性值,就会发现打印出来的数据是更新了,视图不更新,原因是在于在Vue实例创建时, dataTable.bb 并未声明,因此就没有被Vue转换为响应式的属性. this.dat…

ECMAscript6学习

ECMAscript6介绍 ECMA是一个浏览器脚本标准制定的公司,Netscape 创造了 JavaScript 由于商标原因, 后面ECMA公司取名ECMAscript 1 发布,JavaScript 也就是 ECMAscript.到现在最新的版本是6,简称es6. 新增let 与const let 与const …

【数据分析可视化】动态生成柱状图

import pandas as pd import matplotlib.pyplot as plt import matplotlib.ticker as ticker from matplotlib.animation import FuncAnimation import matplotlib.patches as mpatches from matplotlib.animation import FFMpegWriter# 定义一个函数,用于生成…

探秘酒店业黑科技:3D可视化引领管理新风尚

在信息化飞速发展的今天,酒店管理已不再是传统的模式所能满足。 想象一下,你站在一个巨大的3D地图上,轻轻一点,就能瞬间进入酒店的任何一个角落。你可以看到客房的布置、餐厅的摆设、会议室的布局……一切都如同身临其境&#xff…

shell编程中 for while until循环的使用方法及案例

CSDN 成就一亿技术人! 作者主页:点击! Shell编程专栏:点击! CSDN 成就一亿技术人 ————前言———— Shell脚本编程中,有几种常见的循环结构,包括for循环、while循环和until循环&#xf…

C goto 语句

C 语言中的 goto 语句允许把控制无条件转移到同一函数内的被标记的语句。 注意:在任何编程语言中,都不建议使用 goto 语句。因为它使得程序的控制流难以跟踪,使程序难以理解和难以修改。任何使用 goto 语句的程序可以改写成不需要使用 goto 语…

PWM驱动舵机

PWM驱动舵机 接线图 程序结构图: pwm.c部分代码 #include "stm32f10x.h" // Device headervoid PWM_Init(void){// 开启时钟,这里TIM2是通用寄存器RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2,ENABLE);// GPIO初始化代…

MATLAB中的脚本和函数有什么区别?

MATLAB中的脚本和函数是两种不同的代码组织方式,它们在结构、功能和使用方式上有显著的区别。以下是对这两种方式的详细解释,总计约2000字。 一、MATLAB脚本 MATLAB脚本是一种包含多条MATLAB命令的文件,这些命令按照在文件中的顺序依次执行…

2.27线性模型

可以利用无监督学习解决的问题,大致分为两类: 关联分析:发现不同事物之间同时出现的概率。在购物篮分析中被广泛地应用。如果发现买面包的客户有百分之八十的概率买鸡蛋,那么商家就会把鸡蛋和面包放在相邻的货架上。 聚类问题&a…

Java的集合类

一、集合(Collection和Map) (一)List集合(有序,可重复,存取顺序一致): 1.概述: 有序的collection,此接口的用户可以对列表中每个元素的插入位置…

onnx 格式模型可视化工具

onnx 格式模型可视化工具 0. 引言1. 可视化工具2. 安装 Netron: Viewer for ONNX models 0. 引言 ONNX 是一种开放格式,用于表示机器学习模型。ONNX 定义了一组通用运算符(机器学习和深度学习模型的构建基块)和通用文件格式,使 A…

100天精通Python(实用脚本篇)——第118天:基于selenium和ddddocr库实现反反爬策略之验证码识别

文章目录 专栏导读一、前言二、ddddocr库使用说明1. 介绍2. 算法步骤3. 安装4. 参数说明5. 纯数字验证码识别6. 纯英文验证码识别7. 英文数字验证码识别8. 带干扰的验证码识别 三、验证码识别登录代码实战1. 输入账号密码2. 下载验证码3. 识别验证码并登录 书籍推荐 专栏导读 …

SAR ADC教程系列5——FFT频谱泄露以及相干采样

频谱泄露的出现以及如何规避? 为什么要相干采样? 1.分析ADC输出信号的频谱工具:DFT(Discrete Fourier Transform) 重点:DFT相邻频谱频率间隔为fs/N 如何规避频谱泄露? 对于DFT,它对于接收到的信…

前端项目部署后,如何提示用户版本更新

目录 前言解决方案1、public目录下新建manifest.json2、写入当前时间戳到manifest.json3、检查版本更新4、woker线程5、入口文件引入 可能出现的问题 前言 项目部署上线后,特别是网页项目,提示正在操作系统的用户去更新版本非常 important。一般我们都会…

osg执行opengl4.3的shader报错

运行案例:运行这篇博客的opengl4.3的例子,OSG使用GLSL各个版本例子,报如下错误: Warning: detected OpenGL error invalid operation at after pcp->apply(Unfiorm&) in GLObjectsVisitor::apply(osg::StateSet& stat…

C++ 笛卡尔树

目录 一、性质二、构建笛卡尔树三、应用四、源码 一、性质 堆性质: 笛卡尔树是一种满足堆性质的树。每个节点包含两个值:键值(key)和优先级值(priority)。在笛卡尔树中,根节点的优先级值最大&am…

Prompt提示工程上手指南:基础原理及实践(三)-Prompt个性知识库引导

前言 Prompt系列的第二期文章已经将所有的Prompt工程主流策略讲解完毕,共涉及到六种Prompt类别模型以及具体生产内容详解。再结合系列第一篇文章具体对Prompt工程的详细介绍,也就可以达到Prompt工程师的初步入门,现在如果掌握了这些基础技能…