登录
首页 >  Golang >  Go问答

如何排除在 Go 中构建 Mock 或 Stub 结构

来源:stackoverflow

时间:2024-04-19 21:36:36 400浏览 收藏

今天golang学习网给大家带来了《如何排除在 Go 中构建 Mock 或 Stub 结构》,其中涉及到的知识点包括等等,无论你是小白还是老手,都适合看一看哦~有好的建议也欢迎大家在评论留言,若是看完有所收获,也希望大家能多多点赞支持呀!一起加油学习~

问题内容

假设我有一个带有许多接口的 go 包。对于此示例,我将重点关注 middleware.go 中定义的一个名为 middleware 的内容:

type middleware interface {
  // some functions
}

我的系统的其他部分也使用它,因此为了更好地帮助测试系统的这些部分,我在 mock_middleware.go 中手动创建了一个模拟实现:

type MockMiddleware struct {

}  

// implementations

在不进行测试的情况下构建二进制文件时,如何排除模拟类构建到二进制文件中?我知道 middleware_test.go 将被排除,但我不想用该约定命名我的所有模拟,以免将实际测试与支持测试的实现混淆。


解决方案


一种方法是使用 Build Constraints

Go 甚至支持内置的 ignore 标签,但我不太确定它与测试/基准工具链的交互:

今天关于《如何排除在 Go 中构建 Mock 或 Stub 结构》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>