我正在使用gaetestbed服务,当我运行users.get_current_user()
时,我会得到None
即。
>>> 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
这是预期的结果。但是,我想在运行我的一些单元测试时登录一个假用户。
如果可能的话(我希望是这样),当从命令行运行
testbed
时,如何登录用户,以便get_current_user()
返回实际用户?谢谢你的阅读。
最佳答案
要模拟管理员用户的登录,可以调用测试函数中的任意位置:
self.testbed.setup_env(
USER_EMAIL = '[email protected]',
USER_ID = '123',
USER_IS_ADMIN = '1',
overwrite = True)
请注意,您需要使用
overwrite=True
参数!关于python - 使用测试平台时,Google App Engine会设置用户,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6229773/