我正在尝试编写一个简单的集成测试,该测试会启动dev appengine服务器和查询spun up服务器的HTTP Client。以下是代码段:
inst, err := aetest.NewInstance(nil)
check(err)
defer inst.Close()
var req http.Request
req, err = inst.NewRequest("GET", "/my/endpoint", nil)
check(err)
ctx := appengine.NewContex(req)
client := urlfetch.Client(ctx)
_, err = client.Do(req)
check(err)
此代码段在line client.Do上返回错误。根据我调试的内容,这是因为请求的网址只包含" / my / endpoint"而不是整个localhost:端口信息。在这种特殊情况下,我不能使用硬编码端口8080,因为aetest框架在它可以找到的第一个未被发现的端口上开始测试。
有没有办法以编程方式确定主机:aetest框架启动的appengine服务器的端口信息?