我正在对使用app.yaml文件中的登录设置的Google应用引擎应用进行单元测试。如,
- url: /profile
script: main.py
login: required
我正在使用testbed,nose,nose-gae和webtest,虽然不确定哪些是重要的。
我的问题是在测试过程中会忽略app.yaml的登录设置。因此,如果我没有登录用户并致电
response = self.app.get("/profile")
我获取了请求的页面,而不是重定向到登录页面。
有没有办法从app.yaml测试登录设置?
答案 0 :(得分:2)
不使用单元测试。您的测试直接调用处理程序,这不涉及dev_appserver
,这是强制执行这些限制的组件。如果要测试这些限制,则需要一个端到端测试来调用dev_appserver并通过HTTP调用它。
答案 1 :(得分:1)
我意识到这差不多2年了,但是I had a similar problem and came upon a solution that's been developed lately。
devappserver2现在有一个"regression test framework",即default development appserver as of 1.7.6。它设置了一个确实使用app.yaml安全设置的服务器并进行这种集成测试