moto を使って boto3 と Amazon SES を利用したスクリプトのテストコードを書く方法
moto という AWS サービス向けのモックツールがあり、SES を利用したスクリプトのテストも行えたので、その手順を共有します。
手元の環境は以下になります。
- Ubuntu 16.04 LTS
- Python 3.6.5 :: Anaconda, Inc.
- boto3==1.7.42 、moto==1.3.3
注意点としては、SES のクライアントを生成した後に verify_email_identity する必要があったことです。
import unittest
import boto3
from moto import mock_ses
from send_email_to_me import aws_util
class TestAwsUtil(unittest.TestCase):
@mock_ses
def test_send_mail(self):
ses = boto3.client('ses', region_name='us-east-1')
ses.verify_email_identity(EmailAddress='[email protected]')
data = open('tests/test.jpg', 'rb')
attach_file = data.read()
attach_file_name = 'test.jpg'
data.close()
msg = aws_util.make_mime('[email protected]',
'test_subject',
'test_body',
attach_file,
attach_file_name)
responses = aws_util.send_email(ses,
'[email protected]',
'[email protected]',
msg)
self.assertEqual(responses[0]['ResponseMetadata']['HTTPStatusCode'], 200)
Author And Source
この問題について(moto を使って boto3 と Amazon SES を利用したスクリプトのテストコードを書く方法), 我々は、より多くの情報をここで見つけました https://qiita.com/nettle0010/items/05940b7f37b13af42514著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .