以前からずっとある方法だけど、関数の内部で xxxInternal という形で実装を分けて、単体テストでは xxxInternal を使ってテストする書き方を気に入っています。どういうことかといえば、例えばKinesisにPutする以下のようなメソッドがあったとき、 type Writer struct{ ... } func (w *Writer) BulkPost(ctx context.Context, metrics []*Metric) error { k := kinesisFromConfig(w) // Kinesisを初期化する records := make([]types…