Go 1.27でnet/http/httptestにhttptest.NewTestServerが追加されました。 httptest.NewServerと名前はかなり似ていますが、実際にAPIクライアントのテストで使ってみると、テストコードがシンプルになるだけでなく、これまでテストできなかった箇所までテストできるようになる変更だと感じました。 自分がメンテナンスしているnotify_slackでもhttptest.NewServerからhttptest.NewTestServerへ変更したので、そのときに分かったことをまとめます。 これまでのAPIクライアントのテスト notify_slackではSlack APIを呼び出してファイルをアップロードしています。 例えば、ファイルのアップロード先を取得するAPIとして以下のURLを使っています。 var filesGetUploadURLEx