はじめに こんにちは。みなさん、テストしてますか? 開発者にとってはもちろん、テスターやQAにとっても、時にソフトウェアテストは退屈で辛い作業になりがちです。 特にメールや外部サービスが絡む部分はテストがしづらい分面倒ですね。 そこで今回は、テスタビリティを高めるために自分がよく使うサービスやライブラリを紹介していこうと思います。 mailhog SMTPサーバとして動き、送られたメールを全てキャッチしてWebUIから見ることが出来ます。メールの絡むテストには必須。 mail = env === 'honban' ? mail : 'hoge@example.com' みたいなifををこの世から滅殺したり、うっかりステージングサーバから本物のメールを送って事故死するリスクを無くすことが出来ます。 特徴的なのが、SMTPではなくPHPの mail() 関数などを使いsendmail, pos