Gin中测试模式有什么用

我已经检查了文档,但它没有解释使用 setting test mode for gin

gin.SetMode(gin.TestMode)

提供此测试模式的目的是什么?在我的测试中设置和不设置此模式时,我没有看到任何区别。


慕桂英546537
浏览 63回答 1
1回答

米脂

该标志gin.DebugMode用于控制 的输出gin.IsDebugging(),它添加了一些额外的日志输出并将 HTML 呈现器更改为调试结构HTMLDebug。在 Gin 自己的gin.TestMode单元测试中用于打开和关闭调试模式(和附加日志记录),以及调试 HTML 渲染器的使用。除此之外,它没有其他用途(来源)。但是,可以使用环境变量控制标志GIN_MODE=test。然后,由于Mode()导出了,您可以在应用程序代码中使用它,例如声明测试路由。如果您计划运行 E2E 测试套件或其他一些集成测试,这可能会有一些好处:    r := gin.New()    if gin.Mode() == gin.TestMode {        r.GET("/test", func(c *gin.Context) {            c.String(418, "I don't exist in production")        })    }
打开App,查看更多内容
随时随地看视频慕课网APP