2014-07-11 59 views
3

有沒有辦法獲得本地單元測試與google.appengine.ext.testbed自動生成索引的方式相同的開發服務器呢?我已經試過這似乎並沒有工作如下:自動生成索引與應用程序引擎單元測試

from google.appengine.tools import dev_appserver_index 

def setUp(self): 
    self.testbed = testbed.Testbed() 
    self.testbed.activate() 
    self.testbed.init_datastore_v3_stub(require_indexes=True) 
    dev_appserver_index.SetupIndexes(None, root_directory) 
    dev_appserver_index.IndexYamlUpdater(root_directory).UpdateIndexYaml() 

我試着加入dev_appserver_index位都設置()和tearDown()。我試着用require_indexes=Truerequire_indexes=False初始化datastore_v3_stub。似乎沒有任何工作。

回答

3

必須調用init_datastore_v3_stub方法與root_path選項如下:

def setUp(self): 
    self.testbed = testbed.Testbed() 
    self.testbed.activate() 
    self.testbed.init_datastore_v3_stub(root_path="your-root-path") 

root_path是一個真實存在的app.yaml文件的目錄的路徑。

如果將require_indexes選項設置爲True,則會增加NeedIndexError

相關問題