unittestを書いているときもprintデバッグしたいときありますよね。私はあります。
そんなときのプラクティス
import io
import sys
class Case(unittest.TestCase):
def setUp(self):
# 標準出力退避
self.original_stdout = sys.stdout
# 標準出力をキャプチャするためのストリームをセットアップ
sys.stdout = io.StringIO()
def tearDown(self):
# 標準出力を元に戻す
output = sys.stdout.getvalue()
sys.stdout = self.original_stdout
# プリント
print(output)