用于Google应用引擎预期搜索的测试平台

时间:2013-04-16 00:13:37

标签: python google-app-engine

我的问题与Testbed stub for Google App Engine 'search'基本相同,但对于“预期搜索”服务。

我正在尝试为使用预期搜索的应用做一些单元测试,我得到了:

AssertionError: No api proxy found for service "matcher"

我查看了list of supported stubsdocsissue tracker,但我没有找到任何有用的内容。

1 个答案:

答案 0 :(得分:0)

Testbed stub for Google App Engine 'search'上接受的答案已经指向了正确的方向,一旦找到了预期搜索的存根。

此类存根可以在google.appengine.api.prospective_search.prospective_search_stub

中找到

我选择在我的代码中修改SUPPORTED_SERVICES列表,以便将来对SDK的更新不会破坏这一点。虽然我同意任何解决方案都是黑客攻击。

所以这一切都是这样的。

在测试模块中:

from google.appengine.ext import testbed
    #Workaround to avoid prospective search complain until there is a proper
    #testbed stub
from google.appengine.api.prospective_search.prospective_search_stub \
    import ProspectiveSearchStub
PROSPECTIVE_SEARCH_SERVICE_NAME = "matcher"
testbed.SUPPORTED_SERVICES.append(PROSPECTIVE_SEARCH_SERVICE_NAME)

并在def setUp(self):

ps_stub = ProspectiveSearchStub('./ps.txt', None)
self.testbed._register_stub(PROSPECTIVE_SEARCH_SERVICE_NAME, ps_stub)