为了账号安全,请及时绑定邮箱和手机立即绑定

去测试覆盖,在不同的包上

去测试覆盖,在不同的包上

Go
牛魔王的故事 2022-06-27 16:39:16
我一直在写一个休息服务我有以下结构/controllers/domain/dao/services在为每个单独的包编写了大量测试并为每个阶段使用模拟之后,我认为只针对控制器编写测试并模拟数据库会更快,因此我知道 /domain/dao 层正在被调用。我现在的问题是,当我运行代码覆盖率时,即使我知道正在调用代码,我也没有得到 /service 或 /domain/dao 的覆盖率关于如何让我的代码覆盖所有文件的任何想法?
查看完整描述

1 回答

?
三国纷争

TA贡献1804条经验 获得超7个赞

你可以试试flag-coverpkg

go test --cover -coverpkg=./services  ./... -coverprofile=cover.out

要检查文件夹 /services 中的所有包,您可以尝试:

go test --cover -coverpkg=./services/...  ./... -coverprofile=cover.out

只是一个旁注 - 我通常会添加-covermode=count

go test --cover -covermode=count -coverpkg=./services/...  ./... -coverprofile=cover.out

然后,您可以使用 go 工具将其视为 html:

go tool cover -html=cover.out


查看完整回答
反对 回复 2022-06-27
  • 1 回答
  • 0 关注
  • 120 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信