news 2026/2/22 7:57:11

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
自动化测试,UI测试和接口测试的基本概念以及指令

今天跟大家介绍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自动化测试,覆盖产品主要或者说关键流程(包含兼容性测试),也就是说只要保证主要流程不出错,剩下的即使有了问题也不会影响产品的正常使用。把时间更多的放在接口测试用例的设计和实现上,保证数据的准确性。单元测试则可以根据情况选择时间分配。

最后作为一位过来人也是希望大家少走一些弯路,在这里我给大家分享一些软件测试的学习资料,这些资料希望能给你前进的路上带来帮助。

视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/8 10:26:25

Miniconda-Python3.10镜像发布:专为PyTorch GPU训练优化的极简环境

Miniconda-Python3.10镜像发布:专为PyTorch GPU训练优化的极简环境 在深度学习项目日益复杂、实验迭代频率不断提升的今天,一个干净、稳定又足够轻快的开发环境,往往比强大的GPU更能决定研发效率。你是否经历过这样的场景:刚接手同…

作者头像 李华
网站建设 2026/2/19 5:39:12

SSH隧道转发端口访问Jupyter:Miniconda-Python3.10实战教学

SSH隧道转发端口访问Jupyter:Miniconda-Python3.10实战教学 在人工智能实验室或个人开发场景中,你是否曾遇到这样的困境?明明已经在远程GPU服务器上装好了PyTorch和Jupyter,却因为安全策略无法从本地笔记本直接访问;或…

作者头像 李华
网站建设 2026/2/21 6:26:36

利用Miniconda管理多个PyTorch项目环境,避免依赖冲突

利用 Miniconda 管理多个 PyTorch 项目环境,避免依赖冲突 在深度学习项目开发中,一个看似不起眼却频繁“暴雷”的问题是什么?不是模型调参失败,也不是 GPU 显存不足,而是——“为什么你的代码能跑,我的就不…

作者头像 李华
网站建设 2026/2/22 0:29:38

一文搞懂大模型微调

前言 你是不是也有过这样的困惑:明明调用GPT、Llama这些大模型的API能解决通用问题,但一到自己的业务场景——比如让模型识别行业专属术语、生成符合公司风格的文案、处理特定格式的数据分析——效果就大打折扣?要么回答偏离需求,…

作者头像 李华
网站建设 2026/2/21 7:54:19

从Anaconda下载到PyTorch GPU运行:一站式操作手册

从Anaconda下载到PyTorch GPU运行:一站式操作手册 在深度学习项目中,最让人头疼的往往不是模型设计或调参,而是环境配置——明明代码没问题,却因为 torch.cuda.is_available() 返回 False 而卡住;或者换了台机器&…

作者头像 李华
网站建设 2026/2/6 4:43:53

清华镜像源配置教程:大幅提升Miniconda和pip安装速度

清华镜像源配置:加速 Miniconda 与 pip 安装的实战指南 在人工智能项目开发中,你是否经历过这样的场景?——深夜赶实验,运行 conda install pytorch 后盯着终端进度条一动不动,半小时过去只下载了 30%,最终…

作者头像 李华