我正在学习Go Echo和单元测试,我被困在这里面了,我是来寻求帮助的。
func TestGetGamesWithTags(t *testing.T){
req := httptest.NewRequest("http.MethodGet", "/games?tags=tag0", nil)
//response writer
// we can inspect the ResponseRecorder output which is response generated by handler
recorder := httptest.NewRecorder()
GlobalTestServer.echo.ServeHTTP(recorder, request)
// i dont know what to do after this
}
我不知道以后该怎么办
GlobalTestServer.echo.ServeHTTP(recorder, request)
2条答案
按热度按时间ee7vknir1#
为了测试您的
echo
处理程序,您需要一些东西,如echocontext
、request
、recorder
,下面是一个示例:f87krz0w2#
如果您想单元测试您的处理程序,好的做法是模拟您在处理程序中使用的服务,以隔离处理程序函数本身。
例如,您可以使用mock来自动生成mock,并使用testi/mock来使用它们;你可以很容易地找到更多的信息,这些搜索在互联网上,例如这一个介绍:https://medium.com/@thegalang/testing-in-go-mocking-mvc-using-testify-and-mockery-c25344a88691 .