У нас, в маленькой компании, как-то было непринято писать тесты для dao методов. Но щас решили, что там слишком много важной логики, которая часто ломается.
Пока видится только вариант для каждого теста создавать и заполнять тестовую схему в реальной бд, вручную заполнять, затем смотреть, что даст метод. Но смотрится конечно не супер такой вариант.
Обычно там где танцует Go - там рядышком docker/kubernetes. Тоесть не проблема очень быстро поднять тестовую БД, наполнить ее данными и сразу прогнать все тесты по DAO.
Иного способа протестировать DAO я думаю не существут. Смысл DAO - доступаться к внешним источникам данных. Если его мокать - то это уже не тестирование DAO а тестирование логики следующего уровня. Бизнес-логики и прочее.