擅长:python、mysql、java
<p>我不确定您的方法是否是一个好主意(只是在出现错误时打印一些内容),但您可以模拟print函数,看看它是否真的被调用(以及使用了哪些参数):</p>
<p><a href="https://docs.python.org/3/library/unittest.mock.html?highlight=mock#module-unittest.mock" rel="nofollow noreferrer">https://docs.python.org/3/library/unittest.mock.html?highlight=mock#module-unittest.mock</a></p>
<p>编辑:</p>
<p>据我记忆所及,使用mock有点棘手。您必须在当前模块中模拟打印功能。可能是这样的(<strong>未测试…</strong>):</p>
<pre class="lang-py prettyprint-override"><code>from unittest.mock import patch
from unittest import TestCase
class TestGoogleDoSomething(TestCase)
@patch("nameOfYourModule.print")
def test_google_do_something(self, print_mock): # the decorator will pass the mock object into the function
g = google_do_something('blahblah')
print_mock.assert_called_with("your error message here ...")
</code></pre>