Python测试提高价值错误

时间:2018-07-06 05:01:48

标签: python

我只是在使用常规库(而不是pytest)并尝试确认ValueError。

测试:

data = get_time_zone("sun/10-21 tz:US/Eas2tern") 

结果:

if zone not in pytz.all_timezones:
    raise ValueError("Invalid Time Zone Used: " + time_zone)

>>> ValueError: Invalid Time Zone Used: US/Eas2tern

我想用类似的结构进行测试;

Assert "valueError"  etc...

1 个答案:

答案 0 :(得分:0)

如果您使用诸如unittest之类的测试包,您将获得最轻松的时间,有关如何操作的信息,请参见这篇文章:How do you test that a Python function throws an exception?

但是,如果您不想使用任何测试包,则可以执行以下操作(基本上将不存在ValueError的情况转换为AssertionError,如果得到ValueError则不执行任何操作):

def test():
    data = get_time_zone("sun/10-21 tz:US/Eas2tern")

try:
    test()
    raise AssertionError
except ValueError:
    pass