python自动化测试面试题(持续更新~)

1、python变量类型有哪些?哪些是可变类型,哪些是不可变类型?

整型 (int)、浮点型(float)、布尔型(bool)、复数型 (complex)、字符串、列表、元组、字典

不可变类型:Number(数字)、String(字符串)、Tuple(元组)

可变数据(3 个):List(列表)、Dict(字典)、Set(集合)

2、接口测试用例的编写要领有哪些?

1)必填字段:请求参数必填项、可选项
2)合法性:输入输出合法、非法参数
3)边界:请求参数边界值等
4)容错能力:大容量数据、频繁请求、重复请求(如:订单)、异常网络等的处理
5)响应数据校验:断言、数据提取传递到下一级接口…
6)逻辑校验:如两个请求的接口有严格的先后顺序,需要测试调转顺序的情况
7)性能:对接口模拟并发测试,逐步加压,分析瓶颈点
8)安全性:构造恶意的字符请求,如:SQL注入、XSS、敏感信息、业务逻辑(如:跳过某些关键步骤;未经验证操纵敏感数据)

3、怎么验证复选按钮是不是被选中

可以使用元素的 isSelected() 方法,如果返回的是 true 则说明被选中,否则表明未被选中

4、你觉得自动化测试用哪些缺陷

1)成本比较大,而效果可能并不理想
2)适合自动化测试的功能并不多
3)某些功能操作相对复杂,测试成本高,比如验证码
4)维护成本高,一旦项目需求变更,自动化测试脚本和用例就需要改进

5、登录按钮除了用click方法进行点击以外还有其他方式吗?

还可以使用submit()方法,前提是input元素的type为submit

6、变量的命名应当符合什么规则?

1)由字母、下划线和数字组成
2)不能以数字开头
3)不能与关键字重名
4)建议不要与内置函数或者类重名,不然会覆盖原始内置函数的功能
5)区分大小写
6)如果变量名需要由多个单词组成时,每个单词都使用小写字母,单词与单词之间使用 _下划线连接

7、Python中关键字有哪些?请至少写出10个

if、elif、else、while、break、continue、for、in、is、or、and、not、def、None、True、False

8、在做自动化过程中,有遇到过什么问题吗?

遇到的问题是产生过误报,有时候自动化测试报告中显示发现了bug,实际去通过手工测试去确认又不存在该bug。
误报原因一般是:
1)元素定位不稳定(没有进行等待或者等待时间设置的太短;元素是动态变化的,需要优化元素表达式),
2)需要尽量提高脚本的稳定性(使用独立的测试环境,用例与用例之间要相互独立,尽量不要耦合性太强);
3)开发更新了页面但是测试没有及时更新维护!
4)网络问题(页面加载太慢)

9、说说接口测试的流程,介绍一下 request 有哪些内容

流程:
获取接口文档 -> 依据文档设计接口参数 -> 获取响应 -> 解析响应 -> 校验结果 -> 判断测试是否通过

request 内容:
1) 封装了各种请求类型,get、post 等
2)以关键字参数的方式封装各种请求参数,params、data、headers、token 等
3) 封装了响应内容,status_code、json()、cookies、url 等
4)session 会话对象,可以跨请求

10、Python中列表(List)和元组(Tuple)的区别

列表类型(List):使用[]定义的有序的数据集合

元组类型(Tuple):使用()定义的数据集合,元素不能够修改, 如果元素的值是可变类型该值里面的内容是可以被修改的。

列表和元组之间可以相互转化:通过list(元组)将元组转换为列表,
通过tuple(列表)将列表转换为元组,元组只有一个元素时后面的,是不可以省略的。例如:(11,) (“张三”,)

猜你喜欢

转载自blog.csdn.net/m0_37794269/article/details/127899474