Python接口测试中遇到的坑

1、allure执行生成可视化报告时提示

'allure' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

解决:
配置allure环境变量
1.找到allure库的安装目录
2.下载Allure的zip安装包,下载地址:https://bintray.com/qameta/generic/allure2
3.将下载包解压放到目录下:
Python接口测试中遇到的坑_第1张图片
4.进入bin目录,运行allure.bat
Python接口测试中遇到的坑_第2张图片
5.添加allure到环境变量PATH(\安装路径\allure-commandline\bin)
添加环境变量的方法:
计算机–属性–高级系统设置–环境变量–系统变量–path–编辑
6.添加完成后,点击确定即可
Python接口测试中遇到的坑_第3张图片

注意:
allure安装的版本需要和allure库的版本保持一致。

2、运行报错:IndexError: list index out of range

报错内容:

IndexError: list index out of range

问题出现背景:

  • Python中有序序列进行按索引取值的时候,出现这个异常报错
  • 对于条件查询不到结果,无结果的时候也会抛出异常

问题原因:
对于有序序列: 字符串 str 、列表 list 、元组 tuple进行按索引取值的时候,默认范围为 0 ~ len(有序序列)-1,计数从0开始,而不是从1开始,最后一位索引则为总长度减去1。当然也可以使用 负数表示从倒数第几个,计数从-1开始,则对于有序序列,总体范围为 -len(有序序列) ~ len(有序序列)-1,如果输入的取值结果不在这个范围内,则报这个错。

解决:
检查索引是否在 -len(有序序列) ~ len(有序序列)-1 范围内,并修改。

3、报错:TypeError: unhashable type: ‘dict’

报错内容:

TypeError: unhashable type: 'dict'

报错原因:
python不支持dict的key为list或dict类型,因为list和dict类型是unhashable(不可哈希)的。
错误代码:

testdic =
 {{'A':jq_cou_1_Pro},
 {'B':jq_cou_2_Pro},
 {'C':jq_cou_3_Pro},
 {'D':jq_cou_4_Pro}}

解决问题:
通过将字典的关键字key修改为非字典和list列表即可 。修改后的代码为:

testdic =
 {'A':{jq_cou_1_Pro},
 'B'{:jq_cou_2_Pro},
 'C':{jq_cou_3_Pro},
 'D':{jq_cou_4_Pro}}

4、报错TypeError: string indices must be integers

报错内容:

TypeError: string indices must be integers

分析问题:
查看类型是不是json类型

你可能感兴趣的:(Python)