版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、接口测试总结内部公开产品名称Product name密级Confidentiality level内部公开产品版本Product versionTotal 11pages 共11页接口协议测试总结(仅供内部使用)For internal use only拟制:Prepared by王健立日期:Date2006-12-17审核:Reviewed by日期:Date批准:Granted by日期:Date华为技术有限公司Huawei Technologies Co., Ltd.版权所有 侵权必究All rights reserved修订记录Revision record日期Date修订版本Revi
2、sion version修改描述 change Description作者Author2006-12-171.00初稿完成刘明伟目 录Table of Contents 1测试点41.1在测试过程中,最烦琐的,也是最容易测出问题的莫过于字符校验。41.2边界值也是一个很重要的测试点。41.3此外,还要注意关注一下字符长度的问题51.4空值也是一个检查点51.5对某些逻辑关系进行校验。51.6当中间件对接其他外部系统时,如果对本接口有影响,也要进行测试。61.7当然,最重要的功能测试也不能忘记。61.8还要注意一下外系统和本系统的一致性检查71.9对于某些定义后就不允许修改的参数进行校验。71.
3、10可以进行一些并发操作。71.11对于一些异常情况,也可以适当作些测试。81.12如不是用测试桩来模拟外系统,而是真正的对接外系统,那么对于数据之间的逻辑关系还要重点关注。82一些小技巧92.1测试前先从整体上安排好各个模块的测试顺序,和测试策略。92.2在局部模块测试之前首先想好一个测试策略,尽量加快测试速度。92.3可以根据接口文档中对于返回码的描述,在接口测试中重现该返回码。92.4可以在创建时,把所有选项都取边界值或特殊字符,然后,全流程的跑一遍,看是否会引起一些其他的问题。92.5可以在测试过程中,浏览一下本轮所提的问题单和以前版本所提的问题单,看是否有类似的问题在自己负责的模块也
4、存在。92.6可以联系以前自己所测试的相似产品中,曾经发现的具有普遍意义的错误,是否在当前产品中也能重现。103一些注意点103.1在边界值测试中,一般选取非法边界值、边界值和一些典型值进行测试。103.2如果在选项中需要输入时间,那么,对于时间的测试一定要注意以下几点:103.3对于一些不允许输入的特殊字符,如果有可能的话,要尽可能都一一测试。103.4要特别注意返回码是否都能在接口文档找到。10接口测试总结1 测试点1.1 在测试过程中,最烦琐的,也是最容易测出问题的莫过于字符校验。在这部分主要关注点为:(1).对于特殊字符的校验是否和接口文档描述的一致;(2).对于字符长度的校验是否和接
5、口文档描述一致;(3).关注各个模块中相似/相关联选项的特殊字符的字符集是否相同(比如创建查询模块中的id的字符集是否相同);(4).每次操作的返回码是否和接口文档描述一致,返回信息是否清晰明了;(5).对于各个选项的特殊字符校验顺序/策略是否合理;(6). 进行大小写字符敏感的校验;(7). 进行中英文校验;(8).进行字符类型校验,比如在int型编辑框中输入char型数据。1.2 边界值也是一个很重要的测试点。在这部分主要关注点为:(1).最好把所有选项都选成边界值,看后续操作中是否会导致一些相关的问题;(2).分别选取非法边界值、边界值和典型值进行测试;(3).对于时间的边界测试要格外注
6、意,关于时间的边界值测试,在3.2中有较详细的介绍;(4).每次操作的返回码是否和接口文档描述一致,返回信息是否清晰明了;(5).对于各个选项的边界值的校验顺序/策略是否合理;(6).对消息的边界值进行校验(整个消息大小的边界值是属于隐含的需求,容易漏掉,往往在与外部件共同使用时才会发现问题)。注:某些注意点在第二和第三部分中也有提及1.3 此外,还要注意关注一下字符长度的问题在这部分主要关注点为:(1).最好把所有选项都选成最长的字符,看后续操作中是否会导致一些相关的问题;(2).分别选取超长字符、最长字符和最少字符进行测试(空值1.4有介绍);(3).注意对超长字符的提示信息是否准确合理,
7、系统中对于超长字符的提示信息的风格是否一致;(4).每次操作的返回码是否和接口文档描述一致,返回信息是否清晰明了;(5).对于各个选项的超长字符的校验顺序/策略是否合理。注:某些注意点在第二和第三部分中也有提及1.4 空值也是一个检查点在这部分主要关注点为:(1).对于必选项为空是否有校验;(2).对于非必选项为空是否有校验;(3).对于字符前后的空格是否有trim()功能;(4).对于字符中间的空格是否有校验;(5).每次操作的返回码是否和接口文档描述一致,返回信息是否清晰明了;(6).对于各个选项的校验顺序/策略是否合理;(7).此外,如果用测试桩来模拟外部接口,可以对用来表示空值,的数值
8、(比如“-1”等)进行测试,看看数据库相应的表中存储的是不是正确。1.5 对某些逻辑关系进行校验。一般说来,中间件对于接口传来的参数不做逻辑校验,逻辑校验主要由外系统负责。所以,当我们用测试桩来模拟外部系统测试时,不必关注逻辑关系。不过对于要对数据库进行操作(比如修改等)的模块,还是要进行数据的存在校验。比如删除/修改用户就要校验该用户是否存在。在这部分主要关注点为:(1).对于不存在数据的是否有校验;(2).每次操作的返回码是否和接口文档描述一致,返回信息是否清晰明了;(3).对于相互之间有约束关系的数据的约束关系进行校验;(4).对于非主键的所有数据重复性进行校验;(5).对于主键不可重复
9、性进行校验;(6). 返回信息是否清晰明了。1.6 当中间件对接其他外部系统时,如果对本接口有影响,也要进行测试。比如开户就要分为对接ca和不对接ca两种情况进行测试。在这部分主要关注点为:(1).对于对接其他外系统时可能被影响到的所有相关的流程都要进行测试,关注其和不对接其他外系统时的区别,比如不对接dslam时,某些dslam相关的选项为不可输入项/非必选项,而对接dslam时,为必选项;(2).关注对接/不对接其他系统时返回码的区别; (3).每次操作的返回码是否和接口文档描述一致,返回信息是否清晰明了;(4).对于各个选项的校验顺序是否合理。1.7 当然,最重要的功能测试也不能忘记。在
10、这部分主要关注点为:(1).该功能是否能够正确实现;(2).数据库和日志记录是否合理;(3).日志中参数传递是否和接口文档一致;(4).每次操作的返回码是否和接口文档描述一致,返回信息是否清晰明了;(5).对消息的重复发送进行校验;(6).数据维护成功,观察相关系统是否同步刷新。1.8 还要注意一下外系统和本系统的一致性检查由于这部分要根据系统实际情况来测试,所以,在此就不写出太过具体的关注点了。在这部分主要关注点为:(1).对于同一个选项外系统和本系统对其校验策略是否一致;(2).外系统的页面中必选项和非必选项的设置是否和本系统一致;(3).外系统和本系统对于特殊字符的校验是否一致;(4).
11、外系统和本系统对于边界值的校验是否一致;(5).外系统某些限制是否和本系统一致;(6).外系统定义的用户是否可以在本系统上正常使用(可以用边界值定义的用户来测试)等;(7).根据具体情况设置具体的检查项。注:这里所说的一致性,并非要求本系统必须和外部系统完全一致,要根据具体情况具体分析。(比如,cms上元数据录入时的限制就可以大于mw)1.9 对于某些定义后就不允许修改的参数进行校验。在这部分主要关注点为:(1).观察该字段在页面上是否可以修改;(2).观察数据库中该属性的值是否改变;(3).从日志中观察,外系统是否传送该参数; (4).每次操作的返回码是否和接口文档描述一致,返回信息是否清晰
12、明了。1.10 可以进行一些并发操作。比如,sms正在使用某个用户登录后,准备进行某个操作,boss对其进行删除操作,然后sms再用该用户进行操作,看是否会有什么不良影响。由于这部分要根据系统实际情况来测试,所以,在此就不具体写出关注点了。1.11 对于一些异常情况,也可以适当作些测试。在这部分主要关注点为:(1).数据库中该属性的值是否改变(相关表项是否回滚);(2).从日志中观察,外系统是否传送该参数; (3).每次操作的返回码是否和接口文档描述一致,返回信息是否清晰明了;(4).异常可以分为:数据库异常、网络异常等;注:虽然,异常情况出现的几率比较小,但是恰恰这些出现问题几率比较小的地方
13、一旦出现了问题往往都是比较严重的;所以,测试时还是要给予足够的重视。1.12 如不是用测试桩来模拟外系统,而是真正的对接外系统,那么对于数据之间的逻辑关系还要重点关注。在这部分主要关注点为:(1).页面是否对数据的是否存在进行校验;(2).页面是否对一些存在逻辑关系的选项进行逻辑校验;(3).操作失败后,相应的数据表项是否有回滚功能;(4).相应的操作后,数据库的纪录是否正确;(5).对于“null”、“NULL”、“-2”等代表空值或无修改的字符,检验其是否可以正确转义(根据不同的接口协议,可能代表空值的字符不尽相同,根据具体情况具体分析)。(6).日志中参数传递是否和接口文档一致,是否有参
14、数漏传现象;(7).每次操作的返回码是否和接口文档描述一致,返回信息是否清晰明了;(8).对消息的重复发送进行校验(比如对暂停的用户再进行暂停);(9).还可以在外系统上进行一些并发测试;2 一些小技巧2.1 测试前先从整体上安排好各个模块的测试顺序,和测试策略。比如,先测试增加用户,然后,用增加的用户进行恢复用户和挂起用户的操作,等到该用户不再需要时,进行删除用户的操作。这样安排,可以节省很多时间和工夫。2.2 在局部模块测试之前首先想好一个测试策略,尽量加快测试速度。比如在对于一个页面的校验中,该页面包含很多编辑框,可以在其中全部输入非法的边界值,保证在不需要提交的状态下把所有的非法的值测
15、试完毕,然后再输入合法的边界值,进行功能测试。这样测试起来就不必要一个一个的进行,很大程度上提高了速度,而且这样,我们也可以测试出不同编辑框间的校验顺序。2.3 可以根据接口文档中对于返回码的描述,在接口测试中重现该返回码。然后再对比该情况下的返回码是否和接口文档中所说的一致。2.4 可以在创建时,把所有选项都取边界值或特殊字符,然后,全流程的跑一遍,看是否会引起一些其他的问题。此外,对于一些和自己所负责模块有关的参数(比如外键区域),在创建时,可以也都选取边界值或特殊字符,看看会不会导致什么问题。2.5 可以在测试过程中,浏览一下本轮所提的问题单和以前版本所提的问题单,看是否有类似的问题在自己负责的模块也存在。2.6 可以联系以前自己所测试的相似产品中,曾经发现的具有普遍意义的错误,是否在当前产品中也能重现。3 一些注意点3.1 在边界值测试中,一般选取非法边界值、边界值和一些典型值进行测试。比如对于端口号取值范围为1024-65535,那么我们可以选择以下这些点进行测试:-1,0,1,500,1023,1024,5000,65535,65536,700003.2 如果在选项中需要输入时间,那么,对于时间的测试一定要注意以下几点:(1).特殊的日期,比如2006-02-28、2006-07-31和
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025届吉林省长春市榆树市一中高三物理第一学期期末统考试题含解析
- 河南省郑州市嵩阳高级中学2025届高二物理第一学期期末教学质量检测试题含解析
- 2025届山西省长治市高一物理第一学期期末联考试题含解析
- 2025届广东省肇庆市高二物理第一学期期中复习检测模拟试题含解析
- 2025届云南红河州第一中学物理高一上期末综合测试模拟试题含解析
- 四川省广元市四川师范大学附属万达中学2025届高三上物理期中教学质量检测试题含解析
- 2025届黑龙江省哈尔滨师范大学青冈实验中学校物理高二第一学期期末综合测试试题含解析
- 陀螺仪基础知识单选题100道及答案解析
- 四大名著之西游记经典解读九
- 2024简单建设工程合同范本
- 风电场升压站建筑工程主要施工方案
- 第五讲新闻评论的结构与节奏
- 护士长竞聘演讲ppt
- 从PK-PD看抗菌药物的合理应用
- 加热炉施工方案
- 进入重庆市特种设备信息化管理平台
- 意象对话放松引导词2[生活经验]
- 高速公路安全生产标准化指南1
- 学科融合课题研究实施方案
- 生物质压块机使用说明书
- 非织造布学——针刺讲解
评论
0/150
提交评论