readEnv()
nil

如果这很重要,那么在您当前的解决方案中,调用方在测试中的表现不会比您更好。如果这很重要,而且客户端应该能够判断,那么您必须导出某种机制来测试/检查返回的错误。

ErrConfigio.EOFio.ErrClosedPipe
ErrconfigerrConfig
var errConfig = errors.New("Configuration Error: Variables starting...")

func IsErrConfig(err error ) bool {
    return err == errConfig
}
os.IsExist()os.IsNotExist()

您还可以使返回的错误实现一个导出接口,调用方可以使用类型断言检查返回的错误是否实现了该接口,从而为返回的错误提供额外的功能。