mockを作成 sql-mockはsqlmock.New()という関数を持っており、 そちらを利用するとテスト関数に渡すDBと振る舞いを定義出来るmockを返してくれます。 さらに今回Gormを使用したいので、そのDBに対してgorm用のコネクションを作成しておきます。 僕はPostgreSQLを利用していたので、PostgreSQL用のコネクションを生成します。 func GetNewDbMock() (*gorm.DB, sqlmock.Sqlmock, error) { db, mock, err := sqlmock.New() if err != nil { return nil, mock, err } gormDB, err := gorm.Open( postgres.New( postgres.Config{ Conn: db, }), &gorm.Config{}) i
![DATA-DOG/go-sqlmockを使ってGormDBをmockする](https://cdn-ak-scissors.b.st-hatena.com/image/square/192c4b28d5ea56b0f81a09b4589bf063527260d9/height=288;version=1;width=512/https%3A%2F%2Ftech.fusic.co.jp%2Fog%2Fposts%2F2020-12-02-mock-gormdb-using-go-sqlmock.png)