接口测试初级培训.ppt
目录,接口测试的定义,接口传递数据方式,接口测试的特点,接口测试的方法,接口测试实例分析,接口测试用例编写要点,接口测试的定义,接口测试的定义,特指脱离页面呈现,脱离页面调用是否正确,直接测试接口功能的一种测试类型,测试的重点是要检查数据的交换,传递的正确性。通常包括测试接口的参数检查、接口的参数传入及接口返回值是否正确,各接口间逻辑调用是否可以实现应用层功能提交接口测试的重要意义:实现开发期并行测试,减少页面层测试的深度,缩短整个项目的测试周期。目前的接口测试除API类均已使用自动化测试的方式执行,接口测试的特点,接口测试与C/S、B/S测试的区别,接口测试侧重于接口本身的功能,它的验证方式不只是查看返回值,还需要调用其他有依赖关系的接口确认结果是否正确,不依赖于页面支撑,不考虑页面调用逻辑是否正确,可以通过接口测试直接确认缺陷产生的原因。,接口传递数据方式,Get方式是从服务器上获取数据;在做数据查询时,建议用Get方式;如:公共服务部五大服务接口、搜索接口、博客访客系统接口等Post方式是向服务器传送数据;在做数据添加、修改或删除时,建议用Post方式;如:微博图片上传图片接口、Picself API接口等Put方式:这个方法比较少见。HTML表单也不支持这个。本质上来讲,PUT和POST极为相似,都是向服务器发送数据,但它们之间有一个重要区别,PUT通常指定了资源的存放位置,而POST则没有,POST的数据存放位置由服务器自己决定。Delete:删除某一个资源。基本上这个也很少见。,接口测试用例编写要点,测试每个参数类型不合法的情况(类型不合法容易遗漏NULL型)测试每个参数取值范围不合法的情况测试参数为空的情况测试参数前后台定义的一致性测试每个参数的上下限(这里容易出致命的BUG,如果程序处理不当,可能导致崩溃)如果两个请求有严格的先后顺序,需要测试调转顺序的情况,接口wiki中给予的信息 必选参数、可选参数 参数取值范围(默认值、定义范围)返回结果(Retcode值及含义、参数内容)逻辑功能(参数之间的逻辑、接口之间的逻辑),接口测试的方法,接口测试的方法,1.Curl是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,比如HTTP、FTP、TELNET等使用命令:通行证注册接口(regsso.php)curl http:/-d entry=test&name=&pw=123123123&ip=1.1.1.1&m=2b104ce75e5b27748bea493e0b05b4f2&smail=执行结果:errno:-9,errmsg:u6307u5b9au9ad8u7ea7u8bddu9898u4e0du5b58u5728,errcode:311101对结果中的参数及值进行分析,接口测试实例分析,举例1:根据话题词获取话题信息接口http:/,接口测试实例分析,举例1:根据话题词获取话题信息接口返回结果:errno:1,errmsg:u6210u529f,result:black:true,tid:371079,thread:id:371079,topic_id:359881,ctg1:13,ctg2:0,title:,content:,guide:,metadata:settype:1,province:11,city:11,attribute:4640,uid:2106784773,source:0,status:1,create_time:1376982731,update_time:1378086259,content_text:分析结果:,接口测试实例分析,举例2:申请话题主持人接口http:/http:/-X POST-d tid=400052&uid=2679036945返回结果:errno:-9,errmsg:u5bf9u4e0du8d77uff0cu4f60u8fd8u4e0du6ee1u8db3u6210u4e3au4e3bu6301u4ebau7684u6761u4ef6,errcode:312114,接口测试实例分析,举例2:申请话题主持人接口接口URL:Curl http:/-X POST-d tid=400052&uid=2679036945返回结果:errno:-9,errmsg:u5bf9u4e0du8d77uff0cu4f60u8fd8u4e0du6ee1u8db3u6210u4e3au4e3bu6301u4ebau7684u6761u4ef6,errcode:312114,Q&A,积 极 创新 责任,