擅长:python、mysql、java
<p>如果我正确理解你的问题,你可以这样做:</p>
<pre><code>def test_does_not_raise_on_valid_input(self):
raised = False
try:
do_something(42)
except:
raised = True
self.assertFalse(raised, 'Exception raised')
</code></pre>
<p>…假设您有一个对应的测试,正确的<code>Exception</code>在无效的输入上产生,当然:</p>
<pre><code>def test_does_raise_on_invalid_input(self):
self.assertRaises(OutOfCheese, do_something, 43)
</code></pre>
<p>然而,正如评论中所指出的,您需要考虑您实际上是在进行什么样的<em>测试。很可能是一个像。。。</p>
<pre><code>def test_what_is_42(self):
self.assertEquals(do_something(42), 'Meaning of life')
</code></pre>
<p>…更好,因为它测试系统的所需行为,如果引发异常<em>,它将失败。</p>