当下测试行业中UI自动化面临的难点及如何解决

经常有人会问,什么样的项目才适合进行UI自动化测试呢?UI自动化测试相当于模拟手工测试,通过程序去操作页面上的控件。而在实际测试过程中,经常会遇到无法找到控件,或者因控件定义变更而带来的维护成本等问题。

哪些场景下适合UI自动化测试介入呢?

产品比较稳定,不会有频繁的需求变更;

需要频繁做回归验证的核心业务、核心界面;

选择稳定的业务流程,不建议选择处于探索期需要经常变更的业务模块;

适合维护周期长的项目,不适合短期项目;

如果使用编写代码实现的自动化测试工具,需要测试团队中大部分人员具备脚本开发能力。

UI自动化测试面临的两大核心问题

维护成本

UI自动化测试依赖于界面元素的定位和操作,对于界面变动敏感,一旦界面设计发生变化,测试脚本可能会失效。因此需要及时更新测试脚本,从而增加了UI自动化测试的维护成本;

 学习成本

UI自动化测试需要使用特定的测试框架和工具,很多工具的学习曲线比较陡峭,需要掌握相应的编程语言和工具的使用方法,以及测试设计技巧,增加了测试人员的学习成本。

解决方案

今天给大家推荐一款刚刚在QECon大会亮相的产品RunnerGo,也是有UI自动化测试功能,简单易上手!

RunnerGo怎么做UI自动化

首先需要进入官网,RunnerGo支持开源,可以自行下载安装,也可以点击右上角体验企业版按钮快速体验

点击体验企业版进入工作台后可以点击页面上方的UI自动化 进入到测试页面

创建元素

我们可以在元素管理中创建我们测试时需要的元素

这里我们以一个打开百度搜索的场景,添加了百度输入框和百度一下按钮两个元素,首先需要获取到这两个元素的Xpath,如图,右键点击检查,点击左侧箭头指向按钮。

鼠标点击百度输入框即可定位到输入框元素

右键点击复制该元素的Xpath

填入RunnerGo元素属性中,点击确定,相同的方法创建百度搜索按钮元素。

创建场景

通过百度搜索的场景步骤为:进入百度搜索页面-点击输入框-输入搜索内容-点击百度搜索按钮-关闭页面

点击场景管理,创建场景

根据我们的步骤我们添加操作如图,点击打开网页

在弹框内输入需要打开的网页,配置当前步骤截图,点击保存。

保存后点击调试场景

点击后可以查看执行结果可以看到步骤截图:

根据以上步骤我们完善测试场景如下图,即可完成我们的一个流程的UI自动化测试。

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

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

相关文章

web:[MRCTF2020]你传你呢

题目 点进页面显示如下 上传文件&#xff0c;先随便上传一个文件看看情况 构造含有一句话木马的图片上传 访问显示错误 这里参考了大佬的wp&#xff0c;上传一个.htaccess文件,这个.htaccess文件的作用就是把这个图片文件解析成php代码执行 .htaccess文件的内容为 <FilesM…

kaggle新赛:写作质量预测大赛【数据挖掘】

赛题名称&#xff1a;Linking Writing Processes to Writing Quality 赛题链接&#xff1a;https://www.kaggle.com/competitions/linking-writing-processes-to-writing-quality 赛题背景 写作过程中存在复杂的行为动作和认知活动&#xff0c;不同作者可能采用不同的计划修…

【AN-Animate教程——了解AN用途】

【AN-Animate教程——了解AN用途】 Animate是啥Animate能做什么2D动画制作帧动画制作矢量图形绘制和编辑角色建模与骨骼绑定动画特效和过渡效果动画导出与发布 除了动画还能做什么&#xff1f; 这一段时间没更新&#xff0c;主要是工作生活陷入了一个瓶颈。本想着阅读一些人工智…

学习函数式编程、可变参数及 defer - GO语言从入门到实战

函数是⼀等公⺠、学习函数式编程、可变参数及 defer - GO语言从入门到实战 函数是⼀等公⺠ 在Go语言中&#xff0c;函数可以分配给一个变量&#xff0c;可以作为函数的参数&#xff0c;也可以作为函数的返回值。这样的行为就可以理解为函数属于一等公民。 与其他主要编程语⾔…

hive数据库操作,hive函数,FineBI可视化操作

1、数据库操作 1.1、创建数据库 create database if not exists myhive;use myhive;1.2、查看数据库详细信息 desc database myhive;数据库本质上就是在HDFS之上的文件夹。 默认数据库的存放路径是HDFS的&#xff1a;/user/hive/warehouse内 1.3、创建数据库并指定hdfs存…

POI 和 EasyExcel 操作 Excel

一、概述 目前操作 Excel 比较流行的就是 Apache POI 和阿里巴巴的 easyExcel。 1.1 POI 简介 Apache POI 是用 Java 编写的免费开源的跨平台的 Java API&#xff0c;Apache POI 提供 API 给 Java 程序对 Microsoft Office 格式文档读和写的常用功能。POI 为 “Poor Obfuscati…

【Vuex+ElementUI】Vuex中取值存值以及异步加载的使用

一、导言 1、引言 Vuex是一个用于Vue.js应用程序的状态管理模式和库。它建立在Vue.js的响应式系统之上&#xff0c;提供了一种集中管理应用程序状态的方式。使用Vuex&#xff0c;您可以将应用程序的状态存储在一个单一的位置&#xff08;即“存储”&#xff09;中&#xff0c;…

Android Studio: unrecognized Attribute name MODULE

错误完整代码&#xff1a; &#xfffd;&#xfffd;&#xfffd;&#xfffd;&#xfffd;&#xfffd; (1.8.0_291) &#xfffd;г&#xfffd;&#xfffd;&#xfffd;&#xfffd;쳣&#xfffd;&#xfffd;&#xfffd;&#xfffd;&#xfffd;&#xfffd;&#xff…

LeetCode(力扣)416. 分割等和子集Python

LeetCode416. 分割等和子集 题目链接代码 题目链接 https://leetcode.cn/problems/partition-equal-subset-sum/ 代码 class Solution:def canPartition(self, nums: List[int]) -> bool:sum 0dp [0]*10001for num in nums:sum numif sum % 2 1:return Falsetarget …

linux用户管理,用户权限命令详解

一.用户管理 Linux 同时可以支持多个用户&#xff0c;每个用户对自己的文件设备有特殊的权利&#xff0c;能够保证用户之间互不干扰,就像手机开了助手一样&#xff0c;同时登陆多个 qq 账号&#xff0c;当硬件配置非常高时&#xff0c;每个用户还可以同时执行多个任务&#xf…

[CSAWQual 2019]Web_Unagi - 文件上传+XXE注入(XML编码绕过)

[CSAWQual 2019]Web_Unagi 1 解题流程1.1 分析1.2 解题2 思考总结1 解题流程 这篇博客讲了xml进行编码转换绕过的原理:https://www.shawroot.cc/156.html 1.1 分析 页面可以上传,上传一句话php失败,点击示例发现是xml格式,那么就是XXE注入了 点击about得到flag位置: Fla…

微服务10-Sentinel中的隔离和降级

文章目录 降级和隔离1.Feign整合Sentinel来完成降级1.2总结 2.线程隔离两种实现方式的区别3.线程隔离中的舱壁模式3.2总结 4.熔断降级5.熔断策略&#xff08;根据异常比例或者异常数&#xff09; 回顾 我们的限流——>目的&#xff1a;在并发请求的情况下服务出现故障&…