自动化测试,UI测试和接口测试的基本概念以及指令

news2024/10/5 15:34:16

今天跟大家介绍UI测试、接口测试、单元测试主要内容

UI测试【Selenium】
UI测试是最接近软件真实用户使用行为的测试类型。通常是模拟真实用户使用软件的行为,即模拟用户在软件界面上的各种操作,并验证这些操作对应的结果是否正确。

这是最基本的一些Selenium的指令

#浏览器操作
#浏览器最大化
driver.maximize_window()
#设置浏览器宽和高
driver.set_window_size(400,800)
#控制浏览器前进、后退
driver.forward()
driver.back()

#简单对象的定位
find_element_by_id()#----唯一
find_element_by_name()#----唯一
find_element_by_class_name()#class定位
find_element_by_xpath()#元素定位
find_element_by_css_selector()

#鼠标事件
#ActionChains类用来操作鼠标事件
context_click()#------------------鼠标右击
double_click()#------------------鼠标双击
click()#-----------------------------鼠标点击
click_and_hold()#---------------按住鼠标左键不动
move_to_element(目标元素)#------------------------移动到某个元素
move_by_offset(xoffset,yoffset)#--------------------移动到某个坐标
drag_and_drop(source,target)#------将元素从起点source移动到终点target
drag_and_drop_by_offset(source,xoffset,yoffset)#-------按照坐标移动
release()# 在某个元素上释放鼠标

 接口测试【API测试】
API测试,主要针对的是各模块暴露的接口,通常采用灰盒测试方法。首先以黑盒方式设计如何调用API的测试用例,同时在测试执行过程中统计代码覆盖率,然后根据代码覆盖率情况来补充更多、更有针对性的测试用例。
单元测试
单元测试,属于白盒测试的范畴,通常由开发工程师自己完成,越早发现缺陷其修复成本越低。
 

#内存的主要组成索引:
ONative Heap: Native#代码分配的内存,虚拟机和Adoid框架本身也会分配
ODalvik Heap: Java #代码分配的对象
ODalvik Other:#类的数据结构和索引
0 so mmap: Native #代码和常量
0 dex mmap: Java #代码和常量
#内存工具:
口Android Studio/Memory Monitor#观察Dalvik内存
0 dumpsys meminfo#观察整体内存
0 smaps#观察整体内存的详细组成
0 Eclipse Memory Analyzer#详细分析Dalvik内存

**

每种测试的优缺点
**

一、UI自动化测试

大家所在公司都属于互联网公司,最大的特点就是快——产品需要不停的迭代,迭代时间基本在15天左右。
UI自动化测试的优点是,能够实际模拟真实用户的行为,直接验证软件的商业价值;缺点是用例的维护和执行代价很大。另外,UI自动化测试的稳定性问题,是长期以来阻碍GUI测试发展的重要原因。
在快速迭代的情况下,页面的改动可能会很频繁,而UI自动化测试本身基于页面元素,前端小小的改动可能需要测试的大大改。

二、接口测试

相比于UI自动化测试,接口测试更稳定,更具有价值。
效率。接口测试是通过测试数据验证请求【request】与响应【response】是否符合预期。因此,接口测试开发和调试的效率会比ui自动化测试高很多。
稳定性。如果接口改动,那基本属于业务重新设计。所以接口测试用例执行的稳定性很高。
实用性。UI自动化测试验证的主要是页面显示,而接口测试验证的主要是数据。在当前开发水平下,功能测试基本可以完全验证页面显示的问题,所以UI测试有点类似于“这些没问题了,为了保证一直没问题,所以要写UI自动化,每天去执行”。接口测试则是对接口返回数据的验证,开发在开发新的接口时涉及到接口互相的调用,中间难免出现比如数据类型、key-value不匹配的情况,因此在实用性考虑,接口测试实用性更高。

三、单元测试

我们在做非功能测试时,可以利用UI自动化测试,覆盖产品主要或者说关键流程(包含兼容性测试),也就是说只要保证主要流程不出错,剩下的即使有了问题也不会影响产品的正常使用。把时间更多的放在接口测试用例的设计和实现上,保证数据的准确性。单元测试则可以根据情况选择时间分配。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取 

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

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

相关文章

清华发布 KoLA 评测集,分4个认知层级评测LLM,GPT-4竟不是第一?

作者 | Python 预训练语言模型(PLM)刷GLUE,SuperGLUE,甚是常见;那ChatGPT等大语言模型(LLM)刷什么榜呢?现在常用的榜单,例如MMLU评测了57个学科知识,Big-Benc…

CodeForces..一条绳上的蚂蚱.[简单].[ifelse]

题目描述: 题目解读: 给定整数x和k,从0开始到达x,且每次移动的值,不能被k整除。 输出到达目标点x的最小移动次数和每次移动的值。 解题思路: 相当于在数轴上移动到目标点,且每次移动的数值不…

WPS数据清洗+R语言读取文件画频数分布直方图

R语言是一门好语言,但很多人在读取文件中数据时会遇到问题。比如我遇到的问题就是从文件中读取数据后,数据无法用于画图。 检索了N篇博文(抱歉我实在无法一一列举30篇博文)后,终于看到曙光,事实告诉我学任…

最新版CleanMyMacX4.13.6发布了,它值得买吗?

Clean My Mac X是Mac上一款美观易用的系统优化清理工具,也是小编刚开始用Mac时的装机必备。垃圾需要时时清,电脑才能常年新。Windows的垃圾清理工具选择有很多,但是Mac的清理工具可选择的就很少。 最新版CleanMyMacX4.13.6发布此版本有哪些亮…

2023年衣物洗护市场行业分析(京东天猫数据分析)

近年来,受消费者习惯的推动,衣物洗护用品市场不断发展,洗护用品行业的市场规模也不断增长。 根据鲸参谋电商数据分析平台的相关数据显示,今年1月份至4月份,天猫平台上衣物洗护相关产品的销量为7300万,产品销…

TC8:SOMEIPSRV_OPTIONS_05-07

SOMEIPSRV_OPTIONS_05: Reserved field of the IPv4 Endpoint Option 目的 IPv4 Endpoint Option的Reserved字段应静态设置为0x00 这是第二个Reserved字段 测试步骤 DUT CONFIGURE:启动具有下列信息的服务Service ID:SERVICE-ID-1Instance数量:1Tester:客户端-1发送SOME/I…

数字广东:共建区块链开源生态,实现高水平科技自立自强

近日,在2023年第1季社区Task挑战赛中,众多开发者为FISCO BCOS开源项目及周边组件贡献了丰富的代码和教程。其中,作为金链盟开源工作组成员,数字广东网络建设有限公司科技发展部的数字信任中心团队参与了共建。 数字广东网络建设…

【深度学习】5-1 与学习相关的技巧 - 参数的更新(Momentum,AdaGrad, Adam )

神经网络的学习的目的是找到使损失函数的值尽可能小的参数。这是寻找最优参数的问题,解决这个问题的过程称为最优化。 但是神经网络的最优化问题非常难。这是因为参数空间非常复杂,无法轻易找到最优解。而且,在深度神经网络中,参…

直击面试现场:你对MySQL的数据类型了解有多少?

前言 隔着玻璃门,看着面试官缓缓走来,头上飘着几根白发,在行走中随风摇曳,看的让人有一种想帮他薅下来的冲动。 这次面试的岗位是数据库数据类型,面试官坐下来冲着面试者沐风晓月呵呵一笑, “来啦”&…

广工击败清华,CGTN Sports 是这样说的

6 月 18 日晚上,被很多人不看好的弱旅广东工业大学,击败了豪门清华大学,拿下 CUBAL 的总冠军。 CGTN Sports Scene 是这样报道的: 🏆 1st ever CUBAL championship in school history 校史上第一个 CUBAL 冠军 CUBA…

uniapp——Android 异常: failed to connect to localhost/127.0.0.1

bug解决——携带出现: Waiting to navigate to: /pages/……, do not operate continuously: /pages/…… failed to connect to localhost/127.0.0.1 解决方法: 我的报错:主要是failed to connect to localhost/127.0.0.1引发的Waiting …

【MSP430单片机】MSP430G2553程序,MSP430G2553单片机教程,MSP430G2553实战演练

文章目录 开发环境板子介绍官网示例代码下载MSP430普通IO口控制IO口外部中断MSP430时钟系统MSP430不精确延时之delay_msMSP430定时器_CCR0溢出中断MSP430定时器_定时器计数溢出中断MSP430定时器_PWM波形产生MSP430串口_收发9600波特率115200 波特率 MSP430ADCMSP430 Flash读写 …

数据结构顺序表(C语言实现)

绪论 从本章开始就是开始数据结构的开端,本章将会写出数据结构中的顺序表的代码实现,多会以注释的方法来描述一些细节(注释是我们程序员必须常用的工具)。 话不多说安全带系好,发车啦(建议电脑观看&#xf…

Linux多线程之生产者消费者模型1

目录 🍊一、什么是生产者消费者模型 🍊二、基于BlockingQueue的生产者消费者模型 🍊三、生产消费模型的upgrade版本 🍊 四、三线程实现生产消费和存储 🍊一、什么是生产者消费者模型 生产者消费者模式就是通过一…

SciencePub学术 | 智能计算类重点SCIEEI征稿中

SciencePub学术 刊源推荐: 智能计算类重点SCI&EI征稿中!2区闭源正刊,对国人友好!信息如下,录满为止: 一、期刊概况: 智能计算类重点SCIE&EI 📌【期刊简介】IF:8.0-8.5&…

FormData 介绍和使用

FormData 是 JavaScript 中用于处理表单数据的接口。它提供了一种简单的方式来构建和发送表单数据,表单数据以键值对的形式向服务器发送,这个过程是浏览器自动完成的。但是有时候,我们希望通过脚本完成这个过程,构造或编辑表单的键…

生态工具箱 | 虚拟机测试工具WasmFuzzer,智能合约安全防火墙

长安链生态工具箱 丰富实用的区块链生态工具不仅可以让开发者部署、开发过程更加得心应手,还可以从能力上扩展区块链应用边界。长安链正在构建强大的生态工具箱以增强在其在各类场景下的应用能力,如智能合约漏洞检测、抗量子多方安全计算、链迁移、密…

CaffeineCache+Redis 接入系统做二层缓存思路实现(借鉴 mybatis 二级缓存、自动装配源码)

本文目录 前言本文术语本文项目地址设计思路开发思路DoubleCacheAble 双缓存注解(如何设计?)动态条件表达式?例如:#a.id?(如何解析?)缓存切面(如何设计?&…

Linux centos7下漏洞扫描工具 Nessus8.15.9的下载、安装

一、下载Nessus 传送带地址:Download Nessus | Tenable 因为Darren洋的Linux操作系统是Linux Centos7 64 位,大家可以根据自己的选择合适的系统版本,在linux系统中用以下命令即可完成查询系统版本。 cat /etc/redhat-release 二、安装Ness…

Axure8 基本操作记录

参考:黑马产品经理课程 视频资源:day1&day2,Axure部分 文章小结图片 Axure8常用功能 选择/缩放 选择 包含选中:全部选中才有效(避免误操作,建议使用这个)相交选中:相交即全选中…