用路径变量测试CHI路由:故障排除和solutions and Solutions
测试使用路径变量的路由,使用httptptestest.newrequest创建了测试请求。但是,在测试期间执行Artiplect Mifdware会返回HTTP错误(不可填充的实体),表明路径变量上下文不可用。在将路径参数添加到上下文之前,请在访问请求中添加到上下文,然后将其添加到handler:。路径变量 req:= httptest.newrequest(“ get”,“/articles/1”,nil) rctx:= chi.newroutecontext() rctx.urlparams.add(“ ArtentID”,“ 1”) //在请求上下文中设置RuteTECTX req = req.withContext(context.withvalue(req.context(),chi.routectxkey,rctx)) //用修改的请求执行处理程序 rec:= httptest.newrecorder() 通过将路径变量添加到请求的上下文中,ARTICLICTX中间件可以正确检索文章ID,解决不可能的实体错误。实践:
考虑一个类似于简化的单元测试的测试框架。
使用httptest.newrecorder()方法来捕获处理程序所写的响应,以确保在测试中编写的响应。各种方案,例如处理不良请求或路由级错误。免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3