robotframework由于变量名命名问题导致的TypeError: string indices must be integers

robotframework由于变量名命名问题导致的TypeError: string indices must be integers_第1张图片

 如上,预期设置一个字典变量,名为test_dict

第一次从test_dict中取出key为a的值,并且赋值给变量testDict,这一步操作后预期testDict的值为1

第二次从test_dict中取出key为b的值,再次赋值给变量testDict,这一步操作后预期testDict的值为2

实际运行起来后却报错了

robotframework由于变量名命名问题导致的TypeError: string indices must be integers_第2张图片

robotframework由于变量名命名问题导致的TypeError: string indices must be integers_第3张图片

从错误可以看出是第二次对变量testDict进行赋值时报错了

在网上对错误进行查询,给出的解决办法有

1、 看看变量是否是字典   2、检查字典是否有对应的key值

key值是必然存在的,那么就去检查一下变量是否还是个字典对象

robotframework由于变量名命名问题导致的TypeError: string indices must be integers_第4张图片

robotframework由于变量名命名问题导致的TypeError: string indices must be integers_第5张图片

果然,经过第一次取值赋值以后,变量test_dict的类型就已经变成了int

有的框架会自动把下划线的变量名转换为驼峰命名

python的变量命名常用xxx_xxx_xxx这种形式,而robotframework变量命名常用小驼峰命名法

纠正自己的使用习惯,遵循一些常用规范

你可能感兴趣的:(RF)