Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >UI自动化测试、接口测试等自动化测试策略

UI自动化测试、接口测试等自动化测试策略

作者头像
孟船长
发布于 2019-12-24 15:34:46
发布于 2019-12-24 15:34:46
2.3K0
举报

内容梗概

1、介绍UI测试、接口测试、单元测试主要内容

2、每种测试花费时间讨论

UI测试【Selenium】

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

接口测试【API测试】

API测试,主要针对的是各模块暴露的接口,通常采用灰盒测试方法。首先以黑盒方式设计如何调用API的测试用例,同时在测试执行过程中统计代码覆盖率,然后根据代码覆盖率情况来补充更多、更有针对性的测试用例。

单元测试

单元测试,属于白盒测试的范畴,通常由开发工程师自己完成,越早发现缺陷其修复成本越低。

每种测试的优缺点

一、UI自动化测试

大家所在公司都属于互联网公司,最大的特点就是快——产品需要不停的迭代,迭代时间基本在15天左右。

UI自动化测试的优点是,能够实际模拟真实用户的行为,直接验证软件的商业价值;缺点是用例的维护和执行代价很大。另外,UI自动化测试的稳定性问题,是长期以来阻碍GUI测试发展的重要原因。

在快速迭代的情况下,页面的改动可能会很频繁,而UI自动化测试本身基于页面元素,前端小小的改动可能需要测试的大大改。

二、接口测试

相比于UI自动化测试,接口测试更稳定,更具有价值。

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

三、单元测试

船长所在的互联网公司单元测试是由开发完成的,在时间紧张的情况下,我们一般会出一个开发自测文档,只需要开发完成小量的单元测试设计。事实也是如此,开发因为任务在身,写好接口后大多不愿意写大量单元测试。所以单元测试需要根据公司不同而定。

时间讨论

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

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-12-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 自动化测试实战 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
APP的UI自动化测试框架及平台化探索,看完这篇就够了
顾铮,10年+测试及测试开发相关经验,2014年加入京东,曾主导设计开发UI测试框架,参与CI测试平台建设,现负责iOS侧的工具,框架建设。在UI自动化,性能测试,单元测试方面有较深入研究,在App,web端等有较丰富的测试开发和设计经验。
京东技术
2018/07/30
6.9K1
APP的UI自动化测试框架及平台化探索,看完这篇就够了
关于自动化测试的定位及一些实践思考
大家对自动化的理解,首先是想到WebUI自动化,这就为什么我一说自动化,公司一般就会有很多人反对,因为自动化的成本实在太高了。其实自动化是分为三个层面的(UI层自动化、接口自动化、单元测试),不是每个层面的自动化都是遥不可及的,以下标示一下这三个层面的难易程度(也叫这个为自动化金字塔):
顾翔
2019/12/11
7540
关于自动化测试的定位及一些实践思考
功能测试工程师的自动化学习之路
绝大多数测试同学都是从功能测试做起的,工作忙忙碌碌,每天在各种业务需求学习和点点中度过,过了好多年发现自己还只是一个功能测试工程师。
吾非同
2020/10/23
4210
关于自动化测试的理解与误区
为什么先要从概念说起呢?对于新手而言可能总是把自动化看得很高端和牛逼。
软件测试君
2019/06/03
7480
理想中的接口自动化项目
我理想中的接口自动化项目,是有一套脚本,能够100%覆盖核心业务场景,能够回归线上频繁出现的问题,能够支持手工无法验证的场景,能够抛出偶现问题,能够包含容易遗漏的边界场景、异常场景,每天都能定时运行,出具报告,给予反馈。
dongfanger
2022/06/30
4760
理想中的接口自动化项目
自动化测试实践总结
  内容已经有了,但是标题想了很久,最终还是决定用这个。简单清楚明了——总结一场失败的自动化测试案例。
全栈测试开发日记
2023/02/02
7180
从零到一落地接口自动化测试
昨天花了几个小时看完了陈磊老师的《接口测试入门课》,有一些新的收获,结合我自己实践自动化测试的一些经验以及个人理解,这篇文章来聊聊新手如何从零到一落地实践接口自动化测试。
老_张
2023/03/01
7120
从零到一落地接口自动化测试
《软件测试52讲》读书笔记 —— 互联网产品的测试策略
如何在保证测试质量和测试覆盖率前提下,有效缩短测试执行时间呢?这就是今天的主题啦!
小菠萝测试笔记
2020/06/09
4590
《软件测试52讲》读书笔记 —— 互联网产品的测试策略
迷雾中的自动化测试体系建设
在业内如火如荼的 DevOps 转型过程中,自动化测试始终是热点之一,毕竟提供快速质量反馈是达成 DevOps 目标的关键。于是,作为测试领域的“皇冠”,自动化测试的落地实施始终为人们所关注。但是落地当中产生了种种问题甚至是争论,经久不衰,无形中给自动化测试体系建设蒙上了层层迷雾,让人疑惑。下面我们就一些踩过的“坑”进行探讨,期望这些经验分享能够有助于揭开迷雾、看清方向。
腾讯云 CODING
2021/12/30
1.3K0
迷雾中的自动化测试体系建设
web自动化测试(1):再谈UI发展史与UI、功能自动化测试
行文前,安利下文章:《图形界面操作系统发展史——计算机界面发展历史回顾》、《再谈MV*(MVVM MVP MVC)模式的设计原理—封装与解耦》
周陆军
2021/07/25
1.9K0
这是有赞的分层自动化测试实践
先理一下自动化测试的概念,从广义上来说,一切通过工具(程序)的方式来代替或者辅助手工测试的行为都可以成为自动化。从狭义上来说,通过编写脚本的方式,模拟手工测试的过程,从而替代人工对系统的功能进行验证。
DevOps时代
2019/12/17
1.5K0
这是有赞的分层自动化测试实践
使用postman 自动化测试接口
软件测试是软件开发的重要组成部分,是贯穿整个软件生命周期,对软件产品进行验证和确认的活动过程,其目的是尽早发现软件产品中存在的各种问题,如与用户需求、预先定义不一致等问题。
狂奔滴小马
2021/11/15
1.1K0
使用postman 自动化测试接口
【云+社区年度征文】自动化测试面试宝典
将繁琐又要重复执行的任务转换为自动化测试,可以节省大量人力成本,也是自动化测试的优势
小菠萝测试笔记
2020/12/10
8950
python接口自动化(二)--什么是接口测试、为什么要做接口测试(详解)
  上一篇和大家一起科普扫盲接口后,知道什么是接口,接口类型等,对其有了大致了解之后,我们就回到主题-接口测试。
北京-宏哥
2019/09/11
1.8K0
python接口自动化(二)--什么是接口测试、为什么要做接口测试(详解)
测试自动化与自动化测试:差异很重要
自动化测试是通过自动化(例如一组回归测试)进行特定测试的行为,而不是手动进行,而测试自动化是指自动化跟踪和管理不同测试的过程。
FunTester
2019/11/11
1K0
后台自动化测试与持续部署实践
作者:cloudyzhao,腾讯 PCG 后台开发工程师 随着 DevOps 研发模式思想的普及,“测试左移”、“开发负责质量”等理念也开始深入各业务团队。本文以一个实际项目( LogReplay )的 DevOps 实践为例,介绍如何通过可测性提升、自动化测试、持续集成和持续部署流程,最终实现后台微服务的高质量、持续、自动化部署。 测试左移是 DevOps 研发模式中开发全面负责质量的核心环节之一,而测试左移的一个重要手段,就是在开发过程中的各环节快速执行大量有效的自动化测试用例,从而尽早地发现得到质量
腾讯技术工程官方号
2022/04/19
2.1K0
后台自动化测试与持续部署实践
基于Fuzzing和ChatGPT结合的AI自动化测试实践
有赞目前,结合insight接口自动化平台、horizons用例管理平台、引流回放平台、页面比对工具、数据工厂等,在研发全流程中,已经沉淀了对应的质量保障的实践经验,并在逐渐的进化中。
有赞coder
2023/11/09
3.7K1
基于Fuzzing和ChatGPT结合的AI自动化测试实践
自动化测试实践清单
不能否认手动测试将始终保持重要地位,但对自动化测试的需求却在不断增长。自动化测试为公司和团队带来许多好处:效率更高,覆盖面更广。本文分享测试自动化策略的周期的7个阶段中的一些最佳实践,以最大限度地提高自动化测试的效能。
FunTester
2020/12/09
5340
UI 自动化测试在有赞的实践
UI 自动化是质量保障的一种重要手段,我们从分层测试金字塔模型可以看出,质量保障更多的应该依靠底层的单元测试和接口集成测试,UI 自动化测试占比是非常小的一部分,众所周知,UI 层的自动化测试稳定性差,成本高。然而我们团队经过一年多的 UI 自动化测试的实践与优化,发现我们 UI 层自动化测试相对性价比是最高的,脚本的稳定性也非常好,误报率降到了 1% 左右,每次上线前能帮助我们回归系统的一些核心业务流程,下面将跟大家分享一些关于我们 UI 自动化测试的实践经验。
有赞coder
2021/04/12
1.9K0
关于对自动化测试的理解:目的与本质!(新手必看)
其实自动化测试很好理解,由两部分组成,“自动化”和“测试”,所以我们要理解自动化测试,就必须理解“自动化”和“测试”,只有理解了这些概念,才能更轻松的做好的自动化测试。其中“自动化”可以想象成通过各种编程技术实现程序对被测系统可操控的行为,重点在于对“测试”的理解。
测试开发技术
2022/09/28
1.1K1
相关推荐
APP的UI自动化测试框架及平台化探索,看完这篇就够了
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档