【问题标题】:How do I test for exceptions in Python PyTAP?如何在 Python PyTAP 中测试异常?
【发布时间】:2014-07-08 14:16:47
【问题描述】:

我正在使用 Python PyTAP:
http://git.codesimply.com/?p=PyTAP.git

我可以使用ok 函数来测试真相(1 == 1 等)。但是,我想测试一个函数是否正确引发了异常。我怎么能做到这一点?谢谢!

编辑:

该函数检查字符串列表。如果字符串符合某些条件,则会引发异常。如果不满足这些条件,则函数返回一些值。

【问题讨论】:

  • 功能是什么/它有什么作用?您是否希望它始终引发异常?

标签: python unit-testing python-2.7 testing


【解决方案1】:

你总是可以在 PyTAP 之外尝试它:

try:
  my_func()
  print "Exception not raised."
except Exception, e:
  print "Exception \"" + str(e) + "\" raised."

如果您已经在 my_func 中捕获了异常,您可以在 except 子句中添加 print 语句。当然,这假设您实际上可以修改代码。

【讨论】:

  • 我无法修改代码。所以我想我会做的是围绕该功能进行尝试。在每个块中,我将一些东西存储到一个变量中。然后在那个 try-except 块之后,我使用 ok 函数来验证发生了什么。
【解决方案2】:

我认为try:except: 语句是你最好的选择。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多