投稿指南
来稿应自觉遵守国家有关著作权法律法规,不得侵犯他人版权或其他权利,如果出现问题作者文责自负,而且本刊将依法追究侵权行为给本刊造成的损失责任。本刊对录用稿有修改、删节权。经本刊通知进行修改的稿件或被采用的稿件,作者必须保证本刊的独立发表权。 一、投稿方式: 1、 请从 我刊官网 直接投稿 。 2、 请 从我编辑部编辑的推广链接进入我刊投审稿系统进行投稿。 二、稿件著作权: 1、 投稿人保证其向我刊所投之作品是其本人或与他人合作创作之成果,或对所投作品拥有合法的著作权,无第三人对其作品提出可成立之权利主张。 2、 投稿人保证向我刊所投之稿件,尚未在任何媒体上发表。 3、 投稿人保证其作品不含有违反宪法、法律及损害社会公共利益之内容。 4、 投稿人向我刊所投之作品不得同时向第三方投送,即不允许一稿多投。 5、 投稿人授予我刊享有作品专有使用权的方式包括但不限于:通过网络向公众传播、复制、摘编、表演、播放、展览、发行、摄制电影、电视、录像制品、录制录音制品、制作数字化制品、改编、翻译、注释、编辑,以及出版、许可其他媒体、网站及单位转载、摘编、播放、录制、翻译、注释、编辑、改编、摄制。 6、 第5条所述之网络是指通过我刊官网。 7、 投稿人委托我刊声明,未经我方许可,任何网站、媒体、组织不得转载、摘编其作品。

软件测试工程师必备如何做好接口测试Yapi自动化

来源:自动化与仪器仪表 【在线投稿】 栏目:综合新闻 时间:2021-02-15
作者:网站采编
关键词:
摘要:随着科技的发展,互联网技术手段正在对传统劳动密集型行业进行全面赋能,而一个科技产品从生产到应用,除产品设计、技术架构、软件编码、项目管控等核心环节外,质量管控作为

随着科技的发展,互联网技术手段正在对传统劳动密集型行业进行全面赋能,而一个科技产品从生产到应用,除产品设计、技术架构、软件编码、项目管控等核心环节外,质量管控作为满足产品交付标准的最后一环,保证生产出稳定可靠、满足需求的产品是它最核心的目标。而这其中,自动化测试作为软件质量管控的一个新兴且重要手段的之一,在替代大量重复性工作和提高回归测试的效率方面上有着极大优势,对我们敏捷开发出优秀的科技产品有重要意义。

一、背景介绍

软件测试最基本的形式是手工测试,指软件测试的整个活动过程都由软件测试工程师通过鼠标、键盘、麦克风、手机屏幕触控等手工执行完成。

图1:手工测试

软件的自动化测试是,把人对软件的测试行为转化为由机器执行测试行为的一种实践。对于服务端接口的API测试来说,就是由自动化测试工具模拟需要人工在软件界面上的各种操作后发起的一连串接口请求,并且自动验证其结果是否符合预期。

图2:自动化测试

事实上,自动化测试覆盖了从UI(界面测试)到契约(接口测试)以及底层代码方法(单元测试)的整个过程。

图3:自动化测试

(一)Unit单元测试

金字塔最低端也是占比最大的单元测试通常是由开发人员编写,质量控制基本成为开发的本职工作,所以这个层级的测试对整个研发&测试团队的技术和人员都有很高的要求,过于理想化,较难推广。

(二)UI界面测试

最上层的UI测试占比少,是因为UI界面的不稳定性以及UI定位脚本的识别难度较高,且本身对于前端的代码规范性也会有一定的要求,所以一定程度会导致脚本维护成本也非常高。UI自动化测试更适用于测试需要大量重复的、测试功能稳定性和兼容性的单个场景。

(三)Service测试

模型的中间是Service测试,也就是接口API测试,API接口测试介于单元测试和界面测试之间,是一种灰盒测试方法,在前端界面未完成时,测试人员就可以单独验证内部接口功能的完成性。相较于UI自动化测试,它具有自动化成本低和测试效率高的特点,也将是我们研究测试自动化并应用落地的重要内容。

二、技术预研目标

基于上述背景,我们知道本次技术预研的方向是开发出一套满足公司现有产品以及未来规划(微服务等)的接口自动化测试工具、代码框架或者平台。

(一)纯脚本语言自动化框架

1.调研框架:基于python语言的pytest、unittest、RobotFramewor等

2.优点:使用python语法的框架代码优美、功能强大;使用IDE编写调试方便,unittest、pytest分别为python的标准测试库和第三方开源库,可编写出流程复杂的测试场景和更强大的断言;而RF框架则功能更全面且可提供更多可用关键字,增强了代码阅读性。这些开源框架都有非常丰富的插件体系、社区繁荣

3.缺点:对于测试人员的脚本编写能力要求较高;多人同时编写一个项目的脚本,需要掌握代码维护和解决冲突的能力;管理者较难掌控成员的接口编写过程和进度。

图4:纯语言脚本框架

(二)工具类

4.调研工具:Postman、ApiFox等

5.优点:门槛低,上手快,界面操作简洁方便,自带各种代码模块,按需使用即可,复杂处理也可使用js语言编写脚本。配合第三方库newman,方便直接在服务器运行,做持续集成。支持抓包、多数据源读取、配合插件实现数据库操作等。ApiFox还自带Mock服务,非常适合枚举测试场景。

6.缺点:工具自动化功能简单,适用流程较为简单的系统,接口定义与测试集合模块耦合

图5:postman工具

(三)平台类

7.调研类:Nei、Rap、Yapi、FasterRunner等

8.优点:保证大型企业级项目的管理、扁平化的权限设计、嵌入Mock服务、提供接口文档管理,且大部分为开源产品,可二次定制开发。

9.缺点:基于浏览器的操作可能存在漏洞,相对没有桌面软件便捷稳定,抓包困难,暂时不适合做枚举测试。

无论选择框架还是平台,归根到底只是帮助我们更好完成自动化工具,自动化测试体系的核心资产是测试用例,是测试覆盖率,而不是无用的炫技的代码堆砌出来的东西。个人认为结合公司规模、系统级别、测试人员的素质模型,以及综合三类测试手段的优缺点等,开源的平台类产品,并在之上进行二次定制化开发,更满足现在大部分以业务为导向的企业技术的预研目标方向,使其成为完成接口自动化的利器。

文章来源:《自动化与仪器仪表》 网址: http://www.zdhyyqybzz.cn/zonghexinwen/2021/0215/661.html



上一篇:山东一网友拍”自家大门口“上热搜!全网都服了
下一篇:教你制作自动化指令,瞬间提升使用体验

自动化与仪器仪表投稿 | 自动化与仪器仪表编辑部| 自动化与仪器仪表版面费 | 自动化与仪器仪表论文发表 | 自动化与仪器仪表最新目录
Copyright © 20019-2020 自动化与仪器仪表 版权所有
投稿电话: 投稿邮箱: