千家信息网

测试自动化:关注服务层测试

发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,测试发展至今已十年有余,测试的工作也越来越受到各方面的重视,对于测试人员的要求也越来越高,据不完全统计,目前测试项目自动化要求已经接近5成,自动化测试已经在测试行业中占据了相当的地位,而开展自动化测试
千家信息网最后更新 2024年11月11日测试自动化:关注服务层测试

测试发展至今已十年有余,测试的工作也越来越受到各方面的重视,对于测试人员的要求也越来越高,据不完全统计,目前测试项目自动化要求已经接近5成,自动化测试已经在测试行业中占据了相当的地位,而开展自动化测试的要求也越来越高,那么就更加需要测试人员能力的提升,所以今天就为大家分享部分关于自动化的内容

众所皆知,测试应该自动化。敏捷强调要实现测试自动化,但是我们往往都做的不够多、不够快、甚至可能根本没有做。我认为,测试自动化不足的主要原因之一是因为我们关注错了自动化的层次。大多数团队都把精力集中在单元测试和UI测试上,却忽略了服务层测试。

为了说明为何服务层测试如此有价值,让我们仔细观察下测试自动化金字塔的每一层。

单元测试

单元测试构成了测试自动化金字塔的基础。因此,它应该是可靠的测试自动化策略中的最大部分。自动化的单元测试是非常棒的,因为它能够向程序员提供具体的错误数据

例如,自动化的单元测试报告说"在第56行有一个BUG",那么程序员可能就真的会在62行附近找到这个BUG,相对而言测试人员只能告诉"在你从数据库中检索成员记录的过程中出现了BUG",这意味着你可能需要在1000行以上的代码中查找这个BUG,自动化的单元测试的优越性就在于它能够大大缩小对缺陷存在范围的定位。此外,由于通常采用与系统开发相同的语言编写,所以程序员更适合编写单元测试。

UI测试

相比之下,我们想尽可能少的做UI自动化测试。为什么?因为UI自动化测试更加脆弱、昂贵和花时间。例如,假设我们希望测试一个非常简单的计算器,这个计算器允许用户输入两个整数,点击一个乘或者除按钮,就能够看到运算结果。

如果要通过UI进行测试,我们需要编写一系列的测试脚本来驱动UI,例如往各字段中输入适当的数据,按动乘或除按钮,然后比较期望数值和实际数值。这种测试有用,但是并不理想。

此外,用这种方式测试一个应用是部分冗余的--思考一下这样一套测试需要对UI进行多少次测试。每个测试用例都调用了乘除按钮相关的代码和进行函数运算的代码,每个测试用例还会测试显示结果的代码,等等。像这样通过用户接口进行测试,是非常昂贵的,应该尽量少。

服务层测试

然而这并不意味着我们不需要对特性进行测试。我们需要是找出一种合适的方法来避开UI执行测试,这就是测试自动化金字塔中服务层测试的由来。在我们采用的这种测试方法中,"服务"是指应用程序对某个输入或者某一套输入做出的响应。

在我们的计算器例子中涉及到两个服务:乘法和除法。服务层测试就是独立于用户界面外对应用程序服务进行的测试。因此如果要测试十几个乘法测试用例,我们不通过计算器的用户界面而是通过服务层来执行这些测试用例。与在用户层执行同样的测试用例相比较,这样做更加有效而不繁琐。

自动化的单元测试是非常棒的,但它只能覆盖应用程序的部分测试需求。UI测试通常是必须的,但是应当少量使用。服务层测试弥补了单元测试和UI测试间的空白;以更小的工作量和成本满足了团队的自动化测试需求。

虽然很想说希望本篇文章能对大家有所帮助,但是单一浏览一篇文章能获取的知识毕竟是有限的,还请大家理性看待,可能我总结的知识存在片面性,大家有什么好的方式方法也请在评论区中留言大家交流,最后希望大家能在测试的路上畅通无阻

好了,你们看完了文章,我也给你们分享一下资料。

接口测试相关资料

链接:https://pan.baidu.com/s/1ojpoWnpxxReR1sO2Gxy_YQ 密码:dgfa

性能测试相关资料

链接:https://pan.baidu.com/s/1_oZhvOIRvcz0JGcCWUGT-g 密码:d82b

软件测试入门提升电子书

链接:https://pan.baidu.com/s/1Fp8CFE0D2p0uAZk6xcexhQ 密码:exna

自动化测试相关资料

链接:https://pan.baidu.com/s/1yeD1EMg-HalNuRBDODGx7g 密码:ofdg

测试 自动化 服务 单元 程序 用户 代码 密码 计算器 资料 部分 链接 应用 输入 人员 应用程序 按钮 方法 程序员 越来越 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 英雄联盟德玛西亚区服务器在哪 破解加密游戏数据库 网络安全域划分 标准规范 市南区app定制软件开发推荐 网络文明网络安全手抄报内容 广东话输入法软件开发 网宿科技网络安全表彰了没有 幼儿园电信网络安全教育 超星期刊数据库官网 sql2008新建数据库 网络安全有问题 连不上网 数据库中查询降序排序 网络技术综合题pos接口 数据库可以配置域名吗 网络安全研发基金 数据库查看密码策略命令 计算机网络技术的实训心得体会 cas服务器 金融科技和互联网 象州网络安全周 简答题计算机网络安全的五个特征 软件开发配置文件常见格式 创建默认数据库设备 创建数据库的方法有 穿越火线上来就卡在连接服务器 麒麟v10能装在服务器上吗 年度网络安全检查报告 辽源盘古网络技术有限公司 金鼎企服互联网科技有限公司 如何打开数据库设计器
0