相关疑难解决方法(0)

测试在另一个包中时获取Coverage统计数据

我的测试与我的代码不在同一个包中.我发现用一些测试文件来组织一个代码库是一种不那么混乱的方式,我已经读过,为了限制测试通过软件包的公共api进行交互,这是一个好主意.

所以它看起来像这样:

api_client:
    Client.go
    ArtistService.go
    ...
api_client_tests
    ArtistService.Events_test.go
    ArtistService.Info_test.go
    UtilityFunction.go
    ...
Run Code Online (Sandbox Code Playgroud)

我可以输入go test bandsintown-api/api_client_tests -cover 并查看0.181s coverage: 100.0% of statements.但是,这其实只是覆盖在我的UtilityFunction.go(正如我所说的,当我跑go test bandsintown-api/api_client_tests -cover=cover.outgo tool cover -html=cover.out).

有没有办法获得api_client正在测试的实际包的覆盖范围,而不是将它们全部放入同一个包中?

unit-testing code-coverage go

5
推荐指数
1
解决办法
956
查看次数

在不同的包上进行测试覆盖率

我一直在写一个休息服务我有以下结构

/controllers
/domain/dao
/services
Run Code Online (Sandbox Code Playgroud)

在为每个单独的包编写大量测试并为每个阶段进行模拟之后,我认为针对控制器编写测试并模拟数据库会更快,因此我知道 /domain/dao 层正在被调用。

我现在的问题是,当我运行代码覆盖率时,即使我知道代码正在被调用,我也没有获得 /service 或 /domain/dao 的覆盖率

关于如何获得所有文件的代码覆盖率有什么想法吗?

testing code-coverage go

1
推荐指数
1
解决办法
3322
查看次数

标签 统计

code-coverage ×2

go ×2

testing ×1

unit-testing ×1