使用测试平台时,Google App Engine会设置用户

Bri*_*unt 13 python google-app-engine testbed

我正在使用GAE 测试平台服务,当我运行时,users.get_current_user()我得到Noneie

>>> import sys
>>> sys.path.append("/usr/local/google_appengine") # for Mac OS X
>>> from google.appengine.api import users
>>> from google.appengine.ext import testbed
>>> testbed = testbed.Testbed()
>>> testbed.activate()
>>> testbed.init_user_stub()
>>> users.get_current_user() == None
True
Run Code Online (Sandbox Code Playgroud)

这是预期的结果.但是,我想在运行一些单元测试时登录假用户.

如果可能(我希望它会),那么如何testbed在从命令行运行时记录用户以便get_current_user()返回实际用户?

谢谢阅读.

psm*_*ith 18

要模拟管理员用户的登录,您可以在测试功能中的任何位置调用:

self.testbed.setup_env(
    USER_EMAIL = 'test@example.com',
    USER_ID = '123',
    USER_IS_ADMIN = '1',
    overwrite = True)
Run Code Online (Sandbox Code Playgroud)

请注意,您需要使用overwrite=True参数!