接口测试遇到几个问题:
1、要查数据库吗?
2、要看开发代码接口实现逻辑吗?
3、落地接口自动化,对于接口文档、测试自身,项目、公司等有什么具体要求?
4、接口设计规范是什么?往往存在前端 迁就 后端 接口的情况
5、对于小公司,接口自动化的效率如何体现?
针对第五点回答下,本人刚好也正在历此劫。
5.对于小公司,接口自动化的效率如何体现?
1.首先你们公司是否有接口测试,如果没有接口测试,增加接口自动化是不能提升效率
2.如果你们有接口测试,你们做自动化的目的是什么?针对目的做自动化能更清楚自动化给你带来的收益
3.线上/测试出现多少因为接口测试不全的 BUG,拿数据来说话
4.和楼上说的一样可以做定期的回归(发布回归,开发分支合并回归)
5.监控线上业务接口(定时抽查接口,校验是否稳定)
个人经验。
1、必须查询数据库:大部分接口入参都需要从数据库获取,所以你的接口自动化框架需要支持查询数据库的操作
2、看你查人家代码的目的吧。要是有能力者可以查看代码,查看接口的逻辑,入参等,当然不是必须要求,这些可以咨询开发也行,自己查看接口文档,或者抓包获取
3、落地接口自动化对自己搭建能力、推广能力有要求,其他外在的不是那么重要
4、略。看个人习惯
5、接口的价值体现用数据说话。数量、覆盖率、参与度、发现 bug 量、提升效率时间等等
感谢回答!
我一一回答一下,针对你提出的问题,目前的情况:
1、要查数据库吗?
①要是在正式环境接口测试,你敢查数据库么?
测试在测试服进行,目前是 Navicat 连接数据库,手动查看数据
正式服数据库只有查看权限
②你有权限查数据库么?一不小心删库跑路么?
测试服增删改,正式服只查
③个人建议能不用则不用
④请求查询接口来验证比较好点
这两个我觉得测试服还是有权限比较好,自己能动手尽量不去麻烦别人。
有的数据并不是接口能解决得
2、要看开发代码接口实现逻辑吗?
①你的代码能力如何?
这个不好说
②你能看懂实现逻辑么?
肯定不能全懂啊,不然要开发干啥
③如果看懂了还需要接口测试么?
3、落地接口自动化,对于接口文档、测试自身,项目、公司等有什么具体要求?
①没有接口文档,你怎知接口地址,入参出参?
这个怪我,没说明白,目前我们文档只有接口 url,字段相关,request 的 code 意义,其他无。我想问的是接口文档的规范
②你会写接口测试么?
这个问题,问得好,在此不做回答
③你熟悉接口测试的工具么?
熟悉吗?那没问题了
④如果项目迭代过快还是用点点吧
自己产品大概 1 到 2 个月迭代一次,三方产品的话不确定
⑤公司方面你得协调工作时间,不然就没时间去写
目前就一个测试,有计划再找【一】个
4、接口设计规范是什么?往往存在前端 迁就 后端 接口的情况
看情况小作坊随意,我们公司用的是 restful+ 随意😀
没有谁迁就谁,就看谁更强势,或者因改动工作量而决定
目前就很随意,随意到一个接口对一上午
5、对于小公司,接口自动化的效率如何体现?
初步很难体现,初步写一些定期回归的接口自动化
目前是用工具 postman、jmeter 很少用、在尝试写一些回归的自动化 python + pytest + excel,不知道咋评价。就算测了没问题,用的时候问题还是一堆
谢谢,和我公司目前的差不多
5.对于小公司,接口自动化的效率如何体现?
之前有测试,接口有做,但是没那么规范,就是随便测测的那种
老板有意实现,然资源不够,一个人身兼多个项目(5+)
我的理解:
1、要查数据库吗?
如果可以做数据层面的就校验当然是最好的,如果做不了就只能期望 code 或者说接口响应是很详细很有针对性的
2、要看开发代码接口实现逻辑吗?
不知道你说的是接口内还是接口间的,个人认为实现逻辑其实就是业务逻辑,理解并可用于测试设计即可
3、落地接口自动化,对于接口文档、测试自身,项目、公司等有什么具体要求?
落地一看环境、二看技术,文档乱七八糟/档期不够等情况是常事
4、接口设计规范是什么?往往存在前端 迁就 后端 接口的情况
规范不太理解和了解;前后端问题可以用 mock 来进行规避,前后端分离,端与端测试都适用
5、对于小公司,接口自动化的效率如何体现?
小公司首先要面对的是怎么实现落地,之后才是效率体现;其实小项目单系统以及频繁的需求更迭的话,自动化还真不如点的性价比高,当然为了 kpi 除外