汇总下我在接口自动化测试涉及的问题,或许你们面试时用得上

一. python常见的数据类型有哪些?

int、str、 float、list、bool、tuple、dict、set

json本质上还是字符串,只是按key:value这种键值对的格式来的字符串

二. 下个接口请求参数依赖上个接口的返回数据

不同的接口封装成不同的函数或方法,需要的数据return出来,用一个中间变量a去接受,后面的接口传a就可以了

三. 什么是数据驱动,如何参数化?

1、接口自动化当中,使用ddt模块实现数据驱动。

2、流程:

1)用excel文件来管理测试用例涉及的数据,包括请求地址,请求方法,请求body,前置条件-sql语句,期望结果,比对方式,数据库校验语句。

2)用python封装excel类,根据接口名读取接口对应的测试用例数据所有行,存储在列表当中。

3) 用unitest框架来编写接口的测试用例,通过在用例前面@ddt.data(*测试数据列表变量名)来执行每一组用例。

四. 测试的数据你一般放在哪?

对于这个问题最好是具体情况具体分析,针对不同的数据应该放在不同的位置

1.对于账号密码,这种管全局的参数,可以用命令行参数,单独抽出来,写的配置文件里(如ini)

2.对于一些一次性消耗的数据,比如注册,每次注册不一样的数,可以用随机函数生成

3.对于一个接口有多组测试的参数,可以参数化,数据放YAML,text,json,excel都可以

4.对于可以反复使用的数据,比如订单的各种状态需要造数据的情况,可以放到数据库,每次数据初始化,用完后再清理

5.对于邮箱配置的一些参数,可以用ini配置文件

6.对于全部是独立的接口项目,可以用数据驱动方式,用excel/csv管理测试的接口数据

7.对于少量的静态数据,比如一个接口的测试数据,也就2-3组,可以写到py脚本的开头,十年八年都不会变更的,对于少量的,固定不变的数据其实是可以放的

五. 依赖于登录的接口如何处理

登录接口依赖token的,可以先登录后,token存到一个yaml或者json,或者ini的配置文件里面,后面所有的请求去拿这个数据就可以全局使用了。(YAML 是专门用来写配置文件的语言,比Jason格式方便)

如果是cookies的参数,可以用session自动关联

s=requests.session()

后面请求用s.get()和s.post()就可以自动关联cookies了

六. 依赖第三方的接口如何处理

这个需要自己去搭建一个mock服务,模拟接口返回数据

七. 不可逆的操作,如何处理,比如删除一个订单这种接口如何测试

比如工作流这种,流向不同的人状态不一样,操作权限不一样,测试的时候,每种状态都要测到,就需要自己会造数据了。

平常手工测试造数据,直接在数据库改字段状态。那么自动化也是一样,造数据可以用python连数据库了,做增删改查的操作,删除订单业务上一般业务上是做物理删除,即改字段

测试用例前置操作,setUp做数据准备

后置操作,tearDown做数据清理

八. 接口产生的垃圾数据如何清理

造数据和数据清理,需用python连数据库了,做增删改查的操作

测试用例前置操作,setUp做数据准备

后置操作,tearDown做数据清理

所以每个接口用例跑之前和跑之后都清理下产生的数据,保证了账号的可重复使用

九. 怎么检查接口返回的数据是否正确?

1.通过断言的方式,即对传入的参数自己事先设定好预期返回值,根据返回值做断言;

2. 对比接口返回的数据与我们从数据库中查询到的数据是否相符;可通过将接口返回的数据和数据库的查到的数据先转为list,然后进行list对比,相等返回true,不相等返回false。

十. 一个订单的几种状态如何全部测到,如:未处理,处理中,处理失败,处理成功

通过连接数据库,用游标操作数据库,修改数据的状态

十一. python如何连接数据库操作?

主要流程是建立数据库的连接,创建游标(cursor),数据清除、数据插入、关闭数据库(关闭游标)。

最后:下方这份完整的软件测试视频学习教程已经整理上传完成,朋友们如果需要可以自行免费领取【保证100%免费】

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

图片

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值