我有兴趣为“未登录(私人)功能”创建单元测试。然而,它基本上很难在测试包中形成单元测试,因为我必须使它们“公开”。最终,他们的整个关键点都是无私的。关键是这些帮助函数有助于模块化,现在它们是模块化的,能够为它们创建单元测试是非常好的,而不使它们可用于除测试包之外的所有人,它们不是应该被访问的功能,由测试套件或实际软件包本身以外的任何人使用。
有什么建议么?是否有可能只出口到自己的包和一个额外的包或类似的东西去?
在包中创建一个测试文件
library_test.go
package mypkg func TestPrivateStruct(t *testing.T){ pf := private{ "Private Field" } .... }
library.go
package mypkg type private struct { privateField string }
去测试mypkg -v将运行您的测试与您的私有结构