我需要为我的函数编写测试。现在我只检查我的退货类型:
assert type(main.get_values(path)) == list
我可以以某种方式检查返回值是否不仅是list,但是list of strings?我是Python新手,所以这可能是一个很蹩脚的问题。
小智 6
编辑: 正如 quamrana 提到的,测试值隐式验证类型,这也是我通常会做的。但是,这是您原来问题的答案。
与许多语言中的某些数组类型不同,Python 列表允许包含数据类型的任意组合。因此,实现此目的的最清晰(尽管很麻烦)的方法是检查列表中的每个值以确保它是一个字符串。例如,
# Check to see if data is a list, as before
assert type(my_data) is list
# Now check each value in your data is a string
for value in my_data:
    assert type(value) is str
如果您有这样的数据,这将使您的测试通过
my_data = ["h", "e", "l", "l", "o"]
但如果你有这样的数据则不然
my_data = ["h", "e", 1, ["nested", "list"], {"dictionary":"here"}]
| 归档时间: | 
 | 
| 查看次数: | 4330 次 | 
| 最近记录: |