接口测试常用测试点整理
- 格式:docx
- 大小:15.07 KB
- 文档页数:4
接⼝测试流程梳理⼀:接⼝测试做什么?怎么做? 接⼝测试的⼯作内容其实主要分为 1,功能; 2,性能;3,安全⼆:接⼝测试原理 主要是通过测试程序模拟客户向服务器发送请求报⽂,服务器接⼝请求报⽂后对响应的报⽂做出处理然后把应答(响应)报⽂发送给客户端,客户端接收应答报⽂的这⼀个过程,说⽩了,就是发请求接收响应数据的⼀个过程三:接⼝测试的⽬的 为了测试接⼝的正确性和稳定性(持续集成是接⼝测试的核⼼内容)四:接⼝测试常⽤的⼯具 1,loadrunner 2,jmeter 3,postman 4,soapUI 看业务需求和个⼈喜好选择吧五:接⼝测试应该测什么 功能: 单⼀接⼝-------结构检查 组合接⼝ -------结构检查 1,单⼀接⼝测试 主要测试输⼊输出的值,⼀些具有业务意义的值需要特别测试。
⽐如⼀个⽂章列表的接⼝,其中有⼀个type的参数,可以从传1--10的参数,1为推荐⽂章,2为图⽚,3为热⽂接⼝,那么不同的参数的传参就代表不同的场景使⽤,这个时候就要分别测试这些参数场景的数据返回是否正确,⼤体可分为: A、每个参数代表的场景请求,接⼝响应是否正常的响应; B、接⼝的请求⽅式,是GET还是POST或者是其他⽅式(注意:提交数据的操作,⼀定使⽤POST⽅式,不能使⽤GET ⽅式); C、接⼝必传参数检查、⾮必传参数检查、参数的数据类型检查、取值范围检查、长度检查、⼤⼩写转换等 注意:判断接⼝正确与否的依据就是接⼝⽂档,没有接⼝⽂档,就⽆法判断⼀个接⼝是否符合需求 接⼝⽂档包含如下内容: 1、接⼝概述: 1)接⼝名称 2)接⼝功能 3)接⼝类别 4)提交者、提交时间、需求来源及时间要求 2、HTTP请求⽅式 3、认证说明 4、请求限制说明 5、请求参数说明参数名、是否必选、类型、取值范围、描述(⾮必选项的默认值) 6、相关约束 7、注意事项 8、调⽤⽰例 9、返回说明 1)返回数据格式 2)返回结果⽰例 3)错误代码及返回说明 2,接⼝组合(接⼝场景测试) 这个是组合场景所⽤到的接⼝都进⾏过单接⼝测试之后才进⾏的步骤 实际上,我们使⽤软件时候,⽐如: 打开质询类app---->进⼊⾸页--->获取⾸页数据---->查看指定⽂章---->点赞⽂章或取消点赞⽂章---->评论------>收藏⽂章; 打开电商类app---->进⼊⾸页--->搜索商品--->选中商品----->添加进⼊购物车------->提交订单-------->⽀付------>查看订单; 以上⼀系列操作,都是可以通过接⼝来模拟场景的 在每个场景测试的时候,我们就查看每个接⼝配合时候返回的数据是否正确 性能 对于有性能需求的接⼝,做⼀些并发,负载等性能测试 安全 sql注⼊测试 跨站脚本攻击测试 权限管理测试 服务器信息收集 ⽂件、⽬录测试 认证测试六:总结 接⼝测试流程:获取接⼝测试依据(接⼝⽂档)--------->依据接⼝⽂档、编写单接⼝的测试⽤例------>编写组合场景的接⼝测试⽤例----->针对特定接⼝,编写性能测试⽤例----->编写安全性能接⼝测试⽤例----->执⾏测试⽤例(postman,python,jmeter⼯具的使⽤)------>发现bug,提交bug---->bug跟踪知道质量达标----->编写接⼝测试报告----->接⼝⾃动化------>持续集成监控(以上是个⼈经验总结,如有错误,请及时指出)。
PostMan接⼝测试(很全⾯的接⼝测试教程)⼀:理论部分1. 前⾔在前后端分离开发时,后端⼯作⼈员完成系统接⼝开发后,需要与前端⼈员对接,测试调试接⼝,验证接⼝的正确性可⽤性。
⽽这要求前端开发进度和后端进度保持基本⼀致,任何⼀⽅的进度跟不上,都⽆法及时完成功能模块的测试。
做为后端开发⼈员,要求独⽴开发完成某个接⼝后,开发⼈员⾃⼰需要先测试通过后再提交给测试⼈员进⾏测试,否则会出现到测试⼈员哪⾥业务流程根本就⾛不通,或者BUG会过多的情况等。
市场上有很多优秀的,完善的接⼝测试⼯具,⽐如SoapUI,Postman,JMeter、yapi等,能够⾼效的帮助后端开发⼈员独⽴进⾏接⼝测试。
这⾥使⽤Postman接⼝测试⼯具,分别介绍如何对GET请求和POST请求进⾏接⼝测试。
2. Postman简介Postman是⼀个接⼝测试⼯具,在做接⼝测试的时候,Postman相当于⼀个客户端,它可以模拟⽤户发起的各类HTTP请求,将请求数据发送⾄服务端,获取对应的响应结果,从⽽验证响应中的结果数据是否和预期值相匹配;并确保开发⼈员能够及时处理接⼝中的bug,进⽽保证产品上线之后的稳定性和安全性。
它主要是⽤来模拟各种HTTP请求的(如:get/post/delete/put..等等),Postman与浏览器的区别在于有的浏览器不能输出Json格式,⽽Postman 更直观接⼝返回的结果。
3.Postman界⾯图各个功能区的使⽤如下:l 快捷区:快捷区提供常⽤的操作⼊⼝,包括运⾏收藏夹的⼀组测试数据,导⼊别⼈共享的收藏夹测试数据(Import from file, Import from folder, Import from link等),或新建请求、收藏夹、环境变量等。
l 侧边栏:包括搜索栏, Request 请求的历史记录和收藏夹管理。
l 功能区: Request 请求设置,查看 Response 响应结果和测试结果,可以将请求保存到收藏夹。
功能安全接口测试标准主要涉及以下方面:
1. 正确性测试:这是接口测试的重要组成部分,确保接口在接收到请求时返回的是正确的结果。
2. 可靠性测试:评估接口是否能够在特定条件下长期正常工作,包括高流量环境、异常状态(如断网、系统故障等)以及长时间的运行。
3. 功能测试:评估接口是否能够提供所需的功能,测试用例需要覆盖所有的接口,包括正常情况和异常情况。
4. 性能测试:评估接口的效率和效能,验证接口在负载高、并发量大的情况下是否能够正常工作。
5. 安全性测试:评估接口的安全性,验证接口在面对各种攻击时是否能够保护系统的安全。
6. 兼容性测试:验证接口在不同的操作系统、浏览器、设备上是否能够正常工作。
7. 压力测试:验证接口在长时间高负载的情况下是否能够正常工作,避免因为负载过高导致系统崩溃或性能下降,影响用户体验。
功能安全接口测试标准的制定需要根据具体的行业标准和业务需求进行定制,以确保接口测试的全面性和准确性。
1.什么是接口测试接口测试是测试系统组件间接口的一种测试。
接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。
测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。
2.为什么做接口测试首先,节省测试成本,数据模型推算,底层的一个bug能够引发上层的8个左右bug,而且底层的bug很容易引起全网的宕机。
相反接口测试能够提供系统复杂度上升情况下的低成本高效率的解决方案。
其次接口测试不同于传统开发的单元测试,接口测试是站在用户的角度对系统接口进行全面高效持续的检测。
最后接口测试是自动化并且持续集成的,这也是为什么接口测试能够低成本高收益的根源。
总之接口测试是保证高复杂性系统质量的内在要求和低成本的经济利益的驱动作用下的最佳解决方案,接口测试是一个完整的体系,也包括功能测试、性能测试。
3.接口测试的适用范围接口测试一般应用于多系统间交互开发,或者拥有多个子系统的应用系统开发的测试。
接口测试适用于为其他系统提供服务的底层框架系统和中心服务系统,主要测试这些系统对外部提供的接口,验证其正确性和稳定性。
接口测试同样适用于一个上层系统中的服务层接口,越往上层,其测试的难度越大。
接口测试在淘宝的应用是一个自下而上的发展过程。
接口测试实施在多系统多平台的构架下,有着极为高效的成本收益比。
接口测试天生为高复杂性的平台带来高效的缺陷检测和质量监督能力。
平台越复杂,系统越庞大,接口测试的效果越明显。
4.在接口测试中如何应对需求的频繁变化在现在这个互联网软件时代,需求的频繁变动已经不是什么新鲜事。
客户的需求变更、市场需求的变更,项目本身的调整,以及新需求的出现等等都会导致需求的变化。
这种需求的变化常会出现在项目开发阶段,根据需求的变化开发人员会对项目进行调整,而作为在项目开发阶段就接入进行测试的接口测试人员同样也会被影响,这种影响有时是巨大的,影响着我们的工作效率,它会导致我们需要重复以前的部分测试工作,甚至会让我们以前所做的测试工作白费。
接口测试总结引言接口测试是软件测试中一项重要的测试方法,它用于验证软件系统的不同组件之间的交互是否正常。
在本文中,我们将总结接口测试的相关经验和教训,希望能为接口测试实践者提供一些建议和指导。
接口测试的重要性接口测试的目标是确保不同组件之间的数据交换和功能调用能够按照预期进行。
通过接口测试,我们可以提前发现和解决潜在的问题,确保整个系统的稳定性和可靠性。
接口测试的重要性主要体现在以下几个方面: 1. 保证系统的稳定性:接口是不同组件之间的桥梁,通过接口测试可以发现和解决可能导致系统崩溃或数据错误的问题,确保系统的稳定性。
2. 提高系统的可靠性:通过接口测试,可以验证不同组件之间的信息交流和功能调用是否正常,从而提高系统的可靠性。
3. 促进团队合作:接口测试通常需要多个团队共同参与,如开发团队、测试团队和运维团队等。
在接口测试过程中,各团队需要密切合作,共同解决问题,促进团队之间的协作和沟通。
4. 节省时间和资源:接口测试可以在系统集成之前发现和解决问题,从而避免问题在系统集成后的发生。
这样可以节省时间和资源,并缩短项目的开发周期。
接口测试的方法和工具接口测试可以通过以下几种方法进行: - 手动测试:手动测试是最基本和常用的接口测试方法。
通过手工操作,测试人员可以模拟各种交互情景,发现潜在的问题。
然而,手动测试需要消耗大量的时间和精力,并且容易出现遗漏和错误。
- 自动化测试:自动化测试是提高测试效率和准确性的重要手段。
通过使用测试工具和脚本,可以自动化执行接口测试用例,并生成测试报告。
自动化测试可以快速、准确地发现和解决问题,但需要投入一定的时间和资源进行脚本编写和维护。
- 性能测试:性能测试是用于评估系统性能和负载能力的测试方法。
通过模拟多种负载情况,可以测试系统在不同压力下的响应时间和吞吐量等指标。
性能测试可以帮助发现系统的性能瓶颈和优化的空间。
在接口测试中,我们可以使用多种工具来辅助测试工作,如: - Postman:Postman是一款常用的接口测试工具,它提供了可视化的界面和丰富的功能,可以方便地发送请求和验证响应。
接口测试方法范文接口测试方法是一种测试软件接口的方法,通过发送各种请求数据,检查接口的响应和返回结果,以验证接口的正确性和稳定性。
接口测试方法是软件测试中重要的一部分,它可以帮助开发人员和测试人员找到和解决接口问题,提高软件系统的质量和可靠性。
以下是一些常用的接口测试方法:1.静态分析法:对接口文档进行仔细的阅读和分析,了解每个接口的输入、输出、参数和期望的结果。
在接口设计过程中,通过审查代码或文档的方式检查接口设计是否符合要求。
2.基于黑盒测试的方法:使用已知的输入数据,观察接口的输出结果是否符合预期。
黑盒测试不关心内部结构和实现细节,只关注接口的输入和输出。
3.基于白盒测试的方法:分析接口的实现代码,通过代码覆盖率和路径覆盖率等技术,检查接口的各个执行路径和异常情况。
白盒测试需要测试人员了解接口的内部实现和逻辑。
4.边界值测试法:针对接口的输入参数,测试其边界值情况,即最大值、最小值和临界值。
通过测试边界值情况,可以发现接口在边界条件下的错误和异常行为。
5.等价类划分法:将输入参数划分为若干等价类,每个等价类有相同的功能和行为。
选择代表性的测试用例,覆盖每个等价类,以验证接口的功能和正确性。
6.回归测试法:在接口发生变更或者系统其他部分发生变化时,重新运行已有的接口测试用例,确认接口的功能是否受到影响。
回归测试可以确保接口以及整个系统的稳定性和兼容性。
7.异常处理测试法:测试接口对异常输入或其他异常情况的处理能力。
通过模拟不正常的输入数据或系统运行环境,观察接口的异常处理机制和错误输出情况。
8.性能测试法:通过模拟大量的并发请求或大规模数据的处理过程,检查接口的性能和扩展能力。
性能测试可以验证接口在负载下的稳定性和响应速度。
9.安全测试法:测试接口的安全性和防护机制,通过模拟各类攻击和恶意输入,检查接口的安全漏洞和风险。
10.接口自动化测试法:使用自动化测试工具和脚本,通过脚本编写和执行自动化测试用例,提高测试效率和准确性。
关于接口测试的总结接口测试是软件测试中的一种重要测试方法,用于验证和评估应用程序接口的正确性、可靠性和安全性。
在软件开发过程中,接口测试起到了至关重要的作用。
接口测试主要关注接口之间的通信,以及接口对输入输出参数的正确性和稳定性进行验证,确保应用程序能够按照设计规范和要求进行正常的数据传递和交互。
接口测试的目标是检查接口的功能、性能、安全性和可靠性。
在测试过程中,需要对接口进行输入参数的正常和异常值测试,验证应用程序对于不同输入参数的处理是否正确。
此外,还需要对接口的性能进行评估,测试接口在负载和并发情况下的性能表现。
安全性测试是接口测试的另一个重要方面,确保接口暴露给外部系统时不会受到恶意攻击或非法访问。
最后,可靠性测试用于验证接口的稳定性和健壮性,确保接口在长时间运行和高负载情况下仍能正常工作。
在进行接口测试时,需要考虑以下几个关键点:1.确定测试范围:确定需要测试的接口以及关联的系统和子系统。
这些接口应该包括主要的业务逻辑和关键功能。
2.准备测试环境:为接口测试设置一个合适的测试环境,包括服务器、数据库和网络环境等。
确保测试环境和生产环境的一致性。
3.定义测试用例:根据接口的功能和需求,编写相应的测试用例。
测试用例应该覆盖各种情况,包括边界值、错误输入和异常情况等。
4.执行测试用例:按照测试计划和测试用例执行测试。
在测试过程中,需要记录测试步骤和测试结果,并及时修复和跟踪问题。
5.分析测试结果:根据测试结果和日志,分析接口的性能和稳定性。
对于出现的问题,需要深入分析原因,并提供解决方案和建议。
6.编制测试报告:根据测试结果和分析,编制测试报告,包括测试概述、测试结果、问题列表和建议等。
测试报告应该清晰、简洁,并提供相应的截图和日志作为证据。
接口测试的优势是明显的。
首先,接口测试可以发现系统设计上的问题和不一致性。
通过测试接口,可以发现系统组件之间的通信问题、数据不一致和接口参数的错误等。
其次,接口测试能够提高系统的可靠性和健壮性。
接⼝测试⽤例
1、接⼝测试⽤例要素:请求接⼝的参数,请求⽅式,请求的头⽂件,等这些因素都是必需的,对于响应的response, 返回的状态码,返回的数据的检查点,都是必须要事先说明好的,⽤例完善后,我们的脚本在写起来就会效率很⾼,在脚本中,我们需要保证的⼀点,就是稳定,因为请求的响应时间也是我们要考虑的⽅⾯。
2、输⼊参数测试:针对输⼊的参数进⾏测试,也可以说是假定接⼝参数的不正确性进⾏的测试,确保接⼝对任意类型的输⼊都做了相应的处理:输⼊参数合法,输⼊参数不合法,输⼊参数为空,输⼊参数为null,输⼊参数超长;
3、功能测试:接⼝是否满⾜了所提供的功能,相当于是正常情况测试,如果⼀个接⼝功能复杂时推荐对接⼝⽤例进⾏结构划分,这样⼦⽤例具有更好的可读性和维护性。
4、逻辑测试:逻辑测试严格讲应为单元测试,单元测试应保持内部逻辑的正确性,可单元测试和接⼝测试界限并不是那么清楚,所以我们也可以从给出的设计⽂档中考虑内部逻辑错误的分⽀情况和异常;
5、异常情况测试:接⼝实现是否对异常情况都进⾏了处理,接⼝输⼊参数虽然合法,但是在接⼝实现中,也会出现异常,因为内部的异常不⼀定是输⼊的数据造成的,⽽有可能是其他逻辑造成的,程序需要对任何的异常都进⾏处理。
主要说明调⽤的接⼝传递的数据以及应该对应返回的内容:。
接口测试方法接口测试是软件测试中的一个重要环节,它主要是对软件系统的接口进行测试,以验证系统之间的数据传输和交互是否正常。
接口测试方法可以帮助我们发现接口中的问题,并确保系统的稳定性和可靠性。
下面将介绍一些常用的接口测试方法。
1. 静态测试。
静态测试是接口测试的一种重要方法,它主要是通过检查接口的文档、代码和配置文件等静态资源,来发现潜在的问题。
在进行静态测试时,我们可以使用一些工具来检查接口的完整性、正确性和一致性,以及是否符合规范和标准。
2. 动态测试。
动态测试是接口测试中的另一种重要方法,它主要是通过模拟接口的输入和输出,来验证接口的功能和性能。
在进行动态测试时,我们可以使用一些自动化测试工具来模拟接口的请求和响应,以及对接口的性能进行评估和优化。
3. 边界值测试。
边界值测试是接口测试中的一种常用方法,它主要是通过测试接口的输入和输出的边界值,来验证接口的稳定性和可靠性。
在进行边界值测试时,我们可以针对接口的输入和输出参数,分别测试其最小值、最大值和临界值,以及对异常情况进行处理。
4. 异常处理测试。
异常处理测试是接口测试中的另一种常用方法,它主要是通过测试接口对异常情况的处理能力,来验证接口的健壮性和安全性。
在进行异常处理测试时,我们可以模拟各种异常情况,如无效的输入、超时的请求、网络中断等,来验证接口的异常处理能力。
5. 性能测试。
性能测试是接口测试中的一个重要环节,它主要是通过测试接口的响应时间、吞吐量和并发能力,来评估接口的性能和可扩展性。
在进行性能测试时,我们可以使用一些性能测试工具来模拟大量的并发请求,以及对接口的性能进行评估和优化。
总结。
接口测试方法是软件测试中的一个重要环节,它可以帮助我们发现接口中的问题,并确保系统的稳定性和可靠性。
在进行接口测试时,我们可以结合静态测试、动态测试、边界值测试、异常处理测试和性能测试等方法,来全面验证接口的功能、稳定性、安全性和性能。
希望本文介绍的接口测试方法能对大家有所帮助,谢谢阅读!。
接口测试常用测试点整理
测试的策略:
接口测试也是属于功能测试,所以跟我们以往的功能测试流程并没有太大区别,测试流程依旧是:
1、评审测试接口文档(需求文档)
2、根据接口文档编写测试用例(用例编写完全可以按照以往规则来编写,例如等价类划分,边界值等设计方法)
3、执行测试,查看不同的参数请求,接口的返回的数据是否达到预期
那么设计测试用例时我们主要考虑如下几个方面:
一、功能测试:
接口的功能是否正确实现了
接口是否按照设计文档中来实现(比如username参数写为了user,那么这就不符合,因为接口文档在整个开发中都需要使用,所以接口实际的设计要与接口设计文档中保持一致)
兼容性测试:比如说今天接口进行了调整,但是前端没有进行变更,这时候需要验证新的接口是否满足旧的调用方式
错误码测试:通用的错误码与业务错误码是否能够清晰的说明调用问题,错误码是否能够尽可能的全的覆盖所有的情况
返回值测试:返回值除了内容需要是正确的,还需要类型也是正确的,保证调用方拿到这些参数能够正确的解析
参数边界值、等价类测试
json格式测试:通常我们的接口一般设计的都是传递json串,那么就需要去测试如果传递非json的情况,这时候程序会不会正确的处理,返回相应的error code
默认值测试:很多情况一些非必填的参数会有默认值,比如说一个查询的接口,参数count为返回查询的结果数量,默认为10,那么就应该有一条case来测试,当然前置条件是数据库里面必须要存在这样的数据超过10条。
二、逻辑业务:
是否有依赖业务,比如查看订单,是需要用户首先登录的,所以肯定要保证登录了或有相应的cookie
业务逻辑测试:传递正确的参数,接口对数据库进行查询的操作,需要去验证数据库查询是否正确,接口对数据库进行增删改的操作,也需要看数据库是否同步进行了这些操作
三、异常测试:
异常分为两类,参数异常和数据异常
1、参数异常:
关键字参数:将参数写为开发语言中的关键字
参数为空:比如去掉了username参数
多或少参数:多或者少参数的验证,现在还不确定如果一个接口多了参数如果没有报错是否是合理的,或者是否需要优化,因为就目前开发给予的答案是,一般不对接口多了参数的处理
错误参数:比如将username参数写为了user等看是否能返回相应的error code
2、数据异常:
关键字数据:将参数的值填为开发语言中的关键字
数据为空:将参数的额值填为空
长度不一致:因为数据库中每个字段都设置有字段长度,填写不符合的长度进行验证
错误数据:就是将参数的值任意填写,或填写不存在的数值
异常类型测试:比如count参数,这个参数的类型一定是可以转换为int类型的,这时候我们需要测试如果传的一些不可以转换为int类型值来测试代码是否加入判断
四、性能测试:
响应时间
吞吐量
并发用户数
占用内存,CPU等
五、安全性测试:
敏感信息是否加密
必要参数是否后端也进行校验(现在很多系统前后端架构是分离的,从安全层面来说,只依赖前端进行限制已经完全不能满足系统的安全要求(绕过前端太容易了),需要后端同样进行控制,在这种情况下就需要从接口层面进行验证)接口是否防恶意请求(SQL注入)
cookie:就是将header中的cookie修改或删除后看是否能返回相应的error code
header:就是删除或修改header中部分参数的值,看是否能返回相应的error code
唯一识别码:删除修改唯一识别码测试。