2013-11-21 32 views

回答

4

该采取截图:

try: 
    assert something == something_else 
except AssertionError: 
    take_screenshot() 

是你可以做的一种方式。

在某些情况下,你可能想使用一个装饰:

>>> def assertd(function): 
     def _f(*args): 
      try: 
       return function(*args) 
      except AssertionError: 
       takescreenshot() 
     return _f 

>>> @assertd 
def f(x, y): 
    assert x > 0 
    return x + y 

>>> f(1, 2) 
3 
>>> f(5, 6) 
11 
>>> f(-7, 8) 
<Screenshot taken> 
+0

感谢应该做我需要 – Calum

+1

@Calum没问题!如果这个答案对你有帮助,那么在某些时候[接受](http://stackoverflow.com/help/accepted-answer)会很好。 – rlms