点击上方头像关注我,每周上午 09:00准时推送,每月不定期赠送技术书籍,小窗口回复“资源”、“测试工具包”领取测试资源。
本文3258字,阅读约需9分钟
Hi,大家好。今天给大家分享一波接口自动化面试题,如果想要获取更多面试题,可以在后台回复“面试顺利”。
一
Python基础
第一种:通过倒序切片反转,步长是 -1;
第二种,使用reversed 函数 ,可以实现反转;
reversed返回的结果是一个反转的迭代器,我们需要对其进行 list 转换。
第三种,使用sorted函数 ,可以实现反转;
推导式 是 Python 中用来生成数据的一种高级用法,Python 不仅有列表推导时,还有字典推导式、集合推导式、生成器表达式;它的语法都是一样的,都是通过 for 循环来创建数据的一种简写的方式。
推导式它将循环和条件判断结合,从而避免语法冗长的代码,提高代码运行效率。
1)语法格式
第一种语法:
[exp1 for x in data if condition]
第二种语法:
[exp1 if condition else exp2 for x in data]
2)实战练习
实例1:返回1-10的所有偶数乘以2的结果。
输出结果如下:
[4, 8, 12, 16, 20]
实例2:返回1-10的所有偶数乘以2,奇数乘以3的结果。
输出结果如下:
[3, 4, 9, 8, 15, 12, 21, 16, 27, 20]
3)执行效率测试
上文有介绍说列表推导式可以提高代码执行效率,接下来我们通过例子来证实下这个结论。
①先用我们常用的for循环统计时间。
输出结果:
for循环总耗时:0.18744373321533203秒
② 用列表推导式统计时间。
输出结果:
列表推导式总耗时:0.09278202056884766秒
从for循环和列表推导式耗时结果来看,列表推导式执行效率是优于常规的for循环的。
1)什么是闭包?
在函数嵌套的前提下,内部函数使用了外部函数的变量,并且外部函数返回了内部函数,我们把这个使用外部函数变量的内部函数称为闭包。
2)闭包的构成条件?
必须有内嵌函数
内嵌函数必须引用外部变量
外部函数必须返回内嵌函数
3)闭包的使用
Python装饰器就是闭包概念的一种体现,如下示范很典型的闭包场景,单例模式的装饰器。
from functools import wraps
def Singleton(cls):
instance = {}
@wraps(cls)
def wrapper(*args, **kwargs):
if cls not in instance:
instance[cls] = cls(*args, **kwargs)
return instance[cls]
return wrapper
接下来写出一个计时器装饰器,记录函数的执行时间。
1)含义
# 微信公众号:ITester软件测试小栈
json的dumps方法和loads方法,可实现数据的序列化和反序列化。
json.dumps: 将python对象转换为json格式数据。
json.loads: 将json格式数据转化为python对象。
2)应用场景
① json.dumps
代码如下:字典转为字符串。
输出内容如下:
<class 'dict'>
<class 'str'>
{"name": "ITester软件测试小栈", "author": "coco", "age": "18"}
② json.loads
这里我们用之前写过的接口自动化文章为例,从Excel读取数据后,通过数据驱动,打断点后发现读取的参数为字符串类型,所以我们通过 json.loads转化下格式。
有兴趣的小伙伴,可以点击链接查看历史文章:Python接口自动化之数据驱动。
二
接口测试相关
适合做自动化测试的项目,简答来说,就是不变的、重复的、规范的。具体来说,满足以下几个方面:
实际工作中开展自动化测试,我主要从以下几个方面开展:
常规错误:接口没实现,没按约定返回结果,边界值处理出错等;输入异常值(空值、特殊字符、超过约定长度等),接口抛错,没做封装处理;输入错误的参数、多输入、少输入参数;
接口可能出现的错误:安全性问题,如明文传输、返回结果含有敏感信息,没对用户身份信息做校验,没做恶意请 求拦截等;
性能问题:如接口并发插入多条相同操作,响应时间过长,接口压测出现瓶颈等。
接口的安全测试主要有以下几个方面:
更多系列文章
敬请期待
我是CoCo,计算机科学与技术专业,深漂大厂互联网民工(女),坐标深圳。5年工作经验,3年持续输出技术文。ITester软件测试小栈(ID:ITestingA)号主,专注于软件测试技术和宝藏干货分享,每周准时更新原创技术文章,每月不定期赠送技术书籍,愿我们在更高处相逢。喜欢记得星标⭐我,每周及时获得最新推送,第三方转载请注明出处。
想获取更多最新干货内容
快来星标 置顶 关注我