4

SMTP クライアント フォームの生成のモックを作成したいと考えていますsmtplib。次のコード:

from smtplib import SMTP
from unittest.mock import patch

with patch('smtplib.SMTP') as smtp:
    print(SMTP, smtp)

戻り値

<class 'smtplib.SMTP'> <MagicMock name='SMTP' id='140024329860320'>

パッチが失敗したことを意味します。

編集:興味深いことに、ここで説明されているモンキーパッチは同じ結果をもたらします。

import smtplib
from smtplib import SMTP
from unittest.mock import MagicMock

smtp = MagicMock()
smtplib.SMTP = smtp
print(SMTP, smtp)
4

1 に答える 1