はじめにTIG真野です。 バックエンドのアプリケーションの上で、メール送信するコードがある場合の単体テストをどう実現するか悩みました。 メールには、タイトル・本文・From・TO・CC・BCCなど複数の設定値がありますし、SMTPサーバの接続情報もあります。これらを表現する構造体のモデルだけに絞った検証に留めることは、気が進みませんでした。時代はインフラレベルでダミーサーバを動かしモックする方向で動いています。SMTPでメール送信し、その送信結果をテストコード上で取得&検証する一連の流れを行って動作を確かめたいと思いました。 方法として、澁川さんのMailSlurperを使って6桁のコードの送信コードのテストをするで紹介されたMailSlurperを使うか迷いましたが、以下の点で牛刀だなと感じました。 メール送信するのはごく一部の機能(私の場合は1機能。今後増える見込みは現時点で見えなかっ
![go-smtp-mockをSMTPのモックサーバにして単体テストする | フューチャー技術ブログ](https://cdn-ak-scissors.b.st-hatena.com/image/square/565074275fb90b4ee3d176812fd4ccaa5cc0ecf9/height=288;version=1;width=512/https%3A%2F%2Ffuture-architect.github.io%2Fimages%2F20240710a%2F848bc1dd-fc35-4d78-8bd9-0ac3430270d8.png)