自动化始终只是测试工作的一个手段,对于测试人员而言,测试基础和测试用例的设计才是核心。
如果测试用例的覆盖率或者质量不高,那将这部分用例实现为自动化用例的意义也就不大了。
那么,接口测试用例应该怎么编写呢?
1.通过性验证
先肯定要保证这个接口功能是好使的,也就是正常的通过性测试,按照接口文档上的参数,正常传入,是否可以返回正确的结果。
2.参数组合
现在有一个操作商品的接口,有个字段type,传1的时候代表修改商品,商品id、商品名称、价格有一个是必传的,type传2的时候是删除商品,商品id是必传的,这样的,就要测参数组合了,type传1的时候,只传商品名称能不能修改成功,id、名称、价格都传的时候能不能修改成功。
3.接口安全
1)、绕过验证,比如说购买了一个商品,它的价格是300元,那我在提交订单时候,我把这个商品的价格改成3元,后端有没有做验证,更狠点,我把钱改成-3,是不是我的余额还要增加?
2)、绕过身份授权,比如说修改商品信息接口,那必须得是卖家才能修改,那我传一个普通用户,能不能修改成功,我传一个其他的卖家能不能修改成功
3)、参数是否加密,比如说我登陆的接口,用户名和密码是不是加密,如果不加密的话,别人拦截到你的请求,就能获取到你的信息了,加密规则是否容易破解。
4)、密码安全规则,密码的复杂程度校验 。 如果你在软件测试行业有许多的不解的困惑,那么欢迎和我一起在业内的交流群里面沟通探讨。群里面有免费的教程资料以及各阶段测试资源,希望能帮助你突破眼前的瓶颈
4.异常验证
异常的,也就是我不按照你接口文档上的要求输入参数,来验证接口对异常情况的校验。比如说必填的参数不填,输入整数类型的,传入字符串类型,长度是10的,传11,总之就是你说怎么来,我就不怎么来,其实也就这三种,必传非必传、参数类型、入参长度。
5.根据业务逻辑来设计测试用例
根据业务逻辑来设计的话,就是根据自己系统的业务来设计用例,这个每个公司的业务不一样,就得具体的看自己公司的业务了,其实这也和功能测试设计用例是一样的。
举个例子,拿bbs来说,bbs的需求是这样的:
1、登录失败5次,就需要等待15分钟之后再登录
2、新注册的用户需要过了实习期才能发帖
3、删除帖子扣除积分
4、...... 像这样的你就要把这些测试点列出来,然后再去造数据测试对应的测试点。
6.接口测试用例模板
咱们测试接口的话,肯定要写测试用例,写测试用例的话,就要有一个用例模板,那需要有哪些字段呢?
-
1)项目是哪个项目的
-
2)模块这个接口是属于哪个功能模块的
-
3)用例id
-
4)接口名称
-
5)用例标题用例是干嘛的
-
6)请求方式 GET/POST
-
7)请求url url地址
-
8)请求参数
-
9)前置条件有依赖的时候,比如说要测登录失败3次的
-
10)结果验证预期结果
-
11)请求报文
-
12)返回报文
-
13)测试结果通过/失败
-
14)测试人员
最后,为方便大家自学软件测试,将我自己学习的资料分享给大家,准备了一份13G的超实用干货学习资源,涉及的内容非常全面。
包括软件学习路线图,上课视频、16个突击实战项目,80余个软件测试用软件,37份测试文档,70个软件测试相关问题,40篇测试经验级文章,上千份测试真题分享,还有2020软件测试面试宝典,还有软件测试求职的各类精选简历,希望对大家有所帮助…..在文章下方评论或者是私聊大白进群拿资料哦