掌握这些策略,才能掌握自动化测试
今天跟大家介绍UI测试、接口测试、单元测试主要内容,以及每种测试花费时间讨论。
UI测试【Selenium】
UI测试是最接近软件真实用户使用行为的测试类型。通常是模拟真实用户使用软件的行为,即模拟用户在软件界面上的各种操作,并验证这些操作对应的结果是否正确。
接口测试【API测试】
API测试,主要针对的是各模块暴露的接口,通常采用灰盒测试方法。首先以黑盒方式设计如何调用API的测试用例,同时在测试执行过程中统计代码覆盖率,然后根据代码覆盖率情况来补充更多、更有针对性的测试用例。
单元测试
单元测试,属于白盒测试的范畴,通常由开发工程师自己完成,越早发现缺陷其修复成本越低。
1 优缺点
一、UI自动化测试
大家所在公司都属于互联网公司,最大的特点就是快——产品需要不停的迭代,迭代时间基本在15天左右。
优点:能够实际模拟真实用户的行为,直接验证软件的商业价值;
缺点:用例的维护和执行代价很大。另外,UI自动化测试的稳定性问题,是长期以来阻碍GUI测试发展的重要原因。
在快速迭代的情况下,页面的改动可能会很频繁,而UI自动化测试本身基于页面元素,前端小小的改动可能需要测试的大大改。
二、接口测试
相比于UI自动化测试,接口测试更稳定,更具有价值。
效率:接口测试是通过测试数据验证请求【request】与响应【response】是否符合预期。因此,接口测试开发和调试的效率会比ui自动化测试高很多。
稳定性:如果接口改动,那基本属于业务重新设计。所以接口测试用例执行的稳定性很高。
实用性:UI自动化测试验证的主要是页面显示,而接口测试验证的主要是数据。在当前开发水平下,功能测试基本可以完全验证页面显示的问题,所以UI测试有点类似于“这些没问题了,为了保证一直没问题,所以要写UI自动化,每天去执行”。
接口测试则是对接口返回数据的验证,开发在开发新的接口时涉及到接口互相的调用,中间难免出现比如数据类型、key-value不匹配的情况,因此在实用性考虑,接口测试实用性更高。
三、单元测试
船长所在的互联网公司单元测试是由开发完成的,在时间紧张的情况下,我们一般会出一个开发自测文档,只需要开发完成小量的单元测试设计。
事实也是如此,开发因为任务在身,写好接口后大多不愿意写大量单元测试。所以单元测试需要根据公司不同而定。
鉴于上述原因,我们在做非功能测试时,可以利用UI自动化测试,覆盖产品主要或者说关键流程(包含兼容性测试),也就是说只要保证主要流程不出错,剩下的即使有了问题也不会影响产品的正常使用。把时间更多的放在接口测试用例的设计和实现上,保证数据的准确性。单元测试则可以根据公司情况选择时间分配。
相关文章
- 为什么零代码自动化测试越来越受欢迎?
- 探索测试的一些总结
- 一名测试开发工程师的内心自白,被裁员之前,没得到任何风声,措手不及......
- iOS自动化真机测试验证环境过程中常见问题解析
- Python自动化测试:pytest实现关键字驱动
- 使用JavaScript+Selenium玩转Web应用自动化测试
- 一个阿里P6的说不会接口自动化测试,他不会是自己评的吧...
- 【软件测试】测试人的内卷,掀起血雨腥风......
- web自动化测试:Selenium+Python基础方法封装
- 3分钟自检,自动化测试重运行的正确打开方式是?
- Python接口测试实战之搭建自动化测试框架
- 腾讯Android自动化测试实战3.3.2 ListView列表遍历
- 《QTP自动化测试权威指南(第二版)》—第1章1.3节什么是HP QuickTest Professional(QTP)
- Requests接口测试-对cookies的操作处理(一)
- Appium移动端自动化测试之WebdriverAPI(五)
- Monkey稳定性测试实战之ADB命令(三)
- 接口测试自动化生成框架
- APP测试弱网测试
- 工具分享:GitHub的克隆工具Cl0neMast3r,轻松搞定各种测试