代码之家  ›  专栏  ›  技术社区  ›  tompave

使用相同的包是否会污染已编译的二进制文件?

  •  -4
  • tompave  · 技术社区  · 5 年前

    TL;博士:

    较长版本:

    假设我有一个 foo 围棋套餐:

    pkg/
      foo/
        bar.go
        bar_test.go
    

    black box vs white box 在go中进行测试的方法。简要回顾一下,我可以:

    1. bar_test.go 申报 foo_test
    2. 让它成为主要的一部分 包裹

    方法1提供了更好的隔离,因为它允许关注包的公共API,因为只访问包的导出标识符 包装 import "pkg/foo" ,仅包含主 包被编译。那很好。[1]

    我的问题是这些测试会发生什么。因为他们是包裹的一部分 什么时候 是从什么地方进口的,我希望测试能带来。或者编译器是否足够聪明来剥离它们?


    1 回复  |  直到 4 年前
        1
  •  3
  •   Grzegorz Å»ur    5 年前

    是的,Go工具足够聪明,不会将它们传递给编译器。

    https://github.com/golang/go/issues/10184