Unit testing 降低代码覆盖率的模拟代码
我正在与Golang合作,并使用生成所有接口的模拟。此工具在同一包中的mocks.go文件中生成模拟实现。我无法重命名mocks.go至mocks_test.go,因为此模拟文件已被其他软件包使用 问题是这些mock文件由go覆盖工具计数,从而降低了包的代码覆盖率Unit testing 降低代码覆盖率的模拟代码,unit-testing,go,test-coverage,Unit Testing,Go,Test Coverage,我正在与Golang合作,并使用生成所有接口的模拟。此工具在同一包中的mocks.go文件中生成模拟实现。我无法重命名mocks.go至mocks_test.go,因为此模拟文件已被其他软件包使用 问题是这些mock文件由go覆盖工具计数,从而降低了包的代码覆盖率 我正在寻找一个好的解决方法,这样我的代码覆盖率就不会显示错误的数字 在这种情况下,最好的办法是将mock移动到它们自己的专用包中,该包没有测试覆盖范围。这将消除它们对实际需要覆盖率数据的代码的影响。我们就是这样解决的 将接口放入消费者
我正在寻找一个好的解决方法,这样我的代码覆盖率就不会显示错误的数字 在这种情况下,最好的办法是将mock移动到它们自己的专用包中,该包没有测试覆盖范围。这将消除它们对实际需要覆盖率数据的代码的影响。我们就是这样解决的
出于好奇,为什么您的模拟会在测试之外使用?我们正在关注DDD,在DDD中,域通常会公开其存储库接口,该接口稍后由存储库实现。类似于服务,由处理程序层使用。由测试代码本身使用但在该包(Golang特定)之外的模拟共享模拟应该位于单独的包中。那么只有您的其他
*\u test.go
文件需要依赖它们。