到目前为止,我在更改代码时能够保持index.yaml更新的唯一方法是通过浏览器或使用TransparentProxy来访问URL,并通过dev_appserver提供应用程序。
这很糟糕。
有没有办法在单元测试运行器中引导appengine环境,以便使用什么进程来更新index.yaml可以运行而不会产生单线程dev_appserver的开销。
差异很大。我的testsuite(80%覆盖率)在2分钟运行,但不更新index.yaml,如果我使用TransparentProxy运行相同的套件将请求转发到端口8080,index.yaml确实会更新,但需要大约4个小时。再次,这很糟糕。
答案 0 :(得分:2)
您可以使用我的鼻子插件,名为nose-gae-index。它使用SDK中的内部IndexYamlUpdater类,因此它肯定比代理请求更好。
尽管有这种改进,但绝对没有必要一直启用它。我在部署之前使用它,并检查由新提交引起的索引配置更改。
请记住,不要在测试中使用需要索引的查询,否则它们也会被添加到配置文件中!