Google app engine Go应用程序引擎-测试Memcache服务故障

Google app engine Go应用程序引擎-测试Memcache服务故障,google-app-engine,testing,go,Google App Engine,Testing,Go,我正在尝试测试Go-GAE应用程序中的失败路径。我正在使用附带的appengine/aetest包进行测试,该包创建了一个dev_appserver.py子进程来处理API调用,但是似乎不可能告诉API存根开始失败(它总是工作) 我尝试过的一个很有希望的方法是模拟memcache包,让函数返回我想要的一系列错误。唉,我发现withmock与App Engine不太兼容。这听起来是一个不错的功能请求。请在应用程序引擎问题跟踪器上提交一个 啊,我没有使用Go-on-GAE,所以我根本不确定我知道正确

我正在尝试测试Go-GAE应用程序中的失败路径。我正在使用附带的
appengine/aetest
包进行测试,该包创建了一个
dev_appserver.py
子进程来处理API调用,但是似乎不可能告诉API存根开始失败(它总是工作)


我尝试过的一个很有希望的方法是模拟memcache包,让函数返回我想要的一系列错误。唉,我发现
withmock
与App Engine不太兼容。

这听起来是一个不错的功能请求。请在应用程序引擎问题跟踪器上提交一个

啊,我没有使用Go-on-GAE,所以我根本不确定我知道正确的方法。(听起来像是用mock就好了。)最坏的情况是,你可以稍微重新构造你的程序,这样你就可以把缓存去掉:例如,写一个
cache
包,定义一个
type cache interface{…}
func New(c appengine.Context)Cache
可以返回一个
MemCache
对象,该对象仅代理对MemCache模块的所有调用,或者返回一个
FakeCache
对象,该对象以您希望的测试方式失败。