2026/1/2 10:47:37
网站建设
项目流程
做科技汽车的视频网站,哪里有网站建设开发公司,河南省建设厅网站首页,公司和个人均不能备案论坛类网站#x1f345; 点击文末小卡片#xff0c;免费获取软件测试全套资料#xff0c;资料在手#xff0c;涨薪更快一、接口测试基础理论接口测试#xff1a;接口测试是测试系统组件间接口的一种测试#xff0c;主要用于测试系统与外部其他系统之间的接口#xff0c;以及系统内…点击文末小卡片免费获取软件测试全套资料资料在手涨薪更快一、接口测试基础理论接口测试接口测试是测试系统组件间接口的一种测试主要用于测试系统与外部其他系统之间的接口以及系统内部各个子模块之间的接口。接口原理模拟客户端向服务器发送请求报文服务器接收请求报文后对相应的报文做判断并将最终结果返回至客户端客户端再次接收返回结果并应答的过程。检查重点测试的重点是检查接口参数传递、接口功能实现、输出结果的正确性以及对各类异常情况容错处理的完整性与合理性。接口类型内部接口及外部接口内部接口为程序开发的接口方法之间或模块之间的调用外部接口为外部接入调用接口例如王者荣耀的微信登录、支付宝的支付功能等均是外部接口。接口分类webservice接口及http api接口webService接口使用soap协议传输通过http进行传输是HTTP POST专用版本之一遵循一种特殊的xml消息格式请求及返回均为xmlhttp api接口使用http协议通过路径来区分调用的方法通过key-value请求返回报文通常为json。接口本质接口的本质上是一个公开的函数类进行数据传输的发送与接收可以理解成一条通道在发送get或post请求方式时实际上就是从通道进行发送、在由服务器从通道返回数据。测试范围接口功能、接口性能、接口稳定性以及接口安全性等。二、为什么要进行接口测试1、稳固代码底层在初期阶段的开发时业务层面无法检测到底层内容代码底层不稳固牢靠故此需要对底层内容进行接口测试否则底层代码错误可能会引发更多外部系统或调用模块的错误。2、低成本高效益初期开发且资源未设计完成时提前介入测试工作提前暴露问题符合质量前移理念能够明显有效的控制测试成本且接口可进行自动化持续集成故此会有更高的长期收益体现。3、测试范围更广接口测试大部分是从用户的角度而言对系统接口进行全方面的检查测试无论是软件项目还是游戏项目接口测试均会覆盖到部分业务逻辑故此在进行接口测试时也同样能够辅助业务测试。4、提高接口安全上述提到了接口安全的测试范围在接口安全方面考虑客户端进行的限制条件容易避开绕过同样需要测试服务端的限制涉及到部分隐私数据时还需要验证接口的加密传输例如用户密码、身份证、银行卡信息等。5、保障系统稳固进行接口测试能够保障系统间的数据传输以及容错从而提高系统层面的稳定性。总结接口测试的优点提高整体测试效率降低研发测试的成本综合性提升产品质量、降低后续维护资源。三、如何开展接口测试3.1、接口开展方式业务层面常用接口测试工具Postman、Jmeter、SoupUI等。接口测试工具原理通过接口测试工具模拟请求与数据接收实现数据传输。代码层面接口自动化测试通过代码实现发送请求通过代码断言判断接口正确性。ps会在后续自动化的文章教学接口自动化框架搭建、持续集成等内容。3.2、接口测试流程在真实的项目工作中接口测试的流程大致分为以下几个步骤公司不同流程会存在部分差异1、公司有接口测试需求或测试人员收到接口测试任务时开始正式介入接口测试的流程阶段。2、由开发人员提供接口文档测试人员拿到接口文档后先行熟悉需求文档了解各个接口的功能以及相关信息。包括但不限于服务器地址端口、请求方式、请求参数、约束条件、返回状态码等3、当测试人员熟悉需求文档完成后开始介入测试用例的编写与业务测试相同需要考虑到正常、异常的请求参数、还需要考虑到对应的响应报文数据的正确性。4、最后可以通过接口测试工具进行用例执行可以选用Postman、Jmeter等举例Jmeter可以先建立线程组、添加http请求写好相关的请求地址、端口、请求参数并设置好参数化添加断言最后添加结果树再运行Postman与Jmeter原理是一样的只是操作方式不同这里不过多阐述有兴趣的朋友可以网上查找下相关的工具使用说明与资料。5、当运行完成后检查接口是否通过如果接口测试不通过第一步先检查请求方式、参数等信息是否有错误如果无错误的情况下检查下网络环境如果都没有问题可能是接口本身存在问题先以自己的认知进行判断是前端还是后端问题判断完成后提单给开发并附上相关日志信息直至全部确认完成。值得一提的是在业务的接口测试过程中更多的会关注失败的接口在接口自动化的过程中也同样需要关注测试通过的接口以用于质量提升、报告输出等方面。3.3、接口测试需求一份接口需求文档核心要素主要包括以下内容文档封面封面为xx公司接口需求文档有公司名称及公司logo并注明为保密文件、需求文档的版本号、文档创建日期等。修订记录通常为表格形式其中至少包括修订的版本及日期、修订说明、修订人、审核时间以及审核人等。接口说明接口访问地址格式、接口地址举例、返回结果说明等。状态码及相关注释接口信息模块名称、子模块、业务描述、接口名称、请求方法、请求格式、响应格式、请求参数、结果说明、返回示例等。简单介绍接口信息中对应信息所产出的内容模块名称登录、支付等子模块名微信登录、QQ登录、手机号登录业务描述简洁概括接口的功能接口名称/login/wechat/payment/personal请求方法GET / POST 等请求格式application/x-www-form-urlencoded响应格式application/json请求参数手机号、登录密码包括变量名、类型、说明注释、是否必填结果说明参数内容、变量名、类型例如string返回状态码等返回示例返回成功的举例下方4.4接口演示中有图片体现ps并非所有的接口文档都很规范绝大多数的需求文档中不会有如此详细的信息说明具体情况大家依据公司接口文档为准即可。3.4、接口演示王者荣耀、企业微信接口演示笔者在这里进行一些接口的演示帮助大家了解接口、熟悉接口需求和说明~王者荣耀接口展示如下英雄列表接口地址https://pvp.qq.com/web201605/js/herolist.json请求方式GET输入参数无输出参数返回结果部分展示企业微信接口展示如下文件上传接口素材上传得到media_id该media_id仅三天内有效media_id只能是对应上传文件的机器人可以使用请求方式POSTHTTPS接口地址https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?keyKEYtypeTYPE使用multipart/form-dataPOST上传文件 文件标识名为“media”参数说明POST的请求包中form-data中媒体文件标识应包含有 filename、filelength、content-type等信息filename标识文件展示的名称。比如使用该media_id发消息时展示的文件名由该字段控制请求示例POSThttps://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaatypefile HTTP/1.1Content-Type: multipart/form-data; boundary-------------------------acebdf13572468Content-Length: 220---------------------------acebdf13572468Content-Disposition: form-data; name“media”;filename“wework.txt”; filelength6Content-Type: application/octet-streammytext---------------------------acebdf13572468–返回数据未传参{“errcode”: 44001,“errmsg”: “empty media data, hint: [1638347756075722279950035], from ip: 183.14.133.153, more info at https://open.work.weixin.qq.com/devtool/query?e44001”}3.5、接口测试用例设计用例设计格式用例序号项目名称_模块名称_序号接口模块对应的接口模块例如英雄列表、召唤师技能企业微信的登录模块、语音模块等请求方式通常请求方式为GET、POST接口地址通常有固定的地址格式便于接口自动化测试图中的是全地址接口参数输入部分接口不需要接口参数的输入部分存在接口输入如果有填写即可用例设计重点及关注点1发送给服务器的请求数据是否正确2服务器返回给客户端的数据是否与需求一致符合预期3查看数据库中接口是否实现对应功能4接口的响应时间是否符合需求文档要求接口用例设计考虑的范围1、业务功能功能是否实现2、业务规则定义的描述是否符合预期3、请求参数参数的长短、大小、格式等4、异常场景传参异常、操作异常、服务异常等5、数据传输数据传输结果的正确性6、接口性能接口性能的正确例如并发等7、接口安全如支付类、充值接口的数据篡改等ps在以上范围内还需要考虑接口的用例覆盖率及代码覆盖率至少符合预期3.6、后端接口测试内容所谓的接口测试后端接口都测试什么内容下面的图片会给你一定的帮助图片来源于网络好啦~以上就是本次文章分享的全部内容啦你学会了吗有问题记得留言讨论哦~最后感谢每一个认真阅读我文章的人礼尚往来总是要有的虽然不是什么很值钱的东西如果你用得到的话可以直接拿走这些资料对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴我走过了最艰难的路程希望也能帮助到你凡事要趁早特别是技术行业一定要提升技术功底。