查看“测试安全访问权限”的源代码
←
测试安全访问权限
跳转至:
导航
、
搜索
因为以下原因,你没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看并复制此页面的源代码:
事实上,对于安全访问测试,由于缺少访问规则,目前我们的测试应该是会失败的。没有失败,是因为我们使用的是admin用户。因此,我们应该更改测试,以使它们使用Demo用户。 为此,我们应该修改tests/test_todo.py文件,添加一个setUp方法: #class TestTodo(TransactionCase): def setUp(self,* args,** kwargs): result = super(TestTodo,self).setUp(* args,\ ** kwargs) user_demo = self.env.ref('base.user_demo') self.env = self.env(user = user_demo) return result 方法中第一个语句调用父类的setUp代码。接下来语句改变了运行测试的环境变量self.env,使用Demo用户给它赋予了新值。根据上面的写法,不需要再做其他改变。 为确保用户只能看到自己的任务,我们还应该添加一个测试用例。添加之前,首先在顶部添加一个额外的导入语句: from odoo.exceptions import AccessError 然后,添加一个额外的方法到测试类: def test_record_rule(self): “测试每个用户记录规则” Todo = self.env [ todo.task'] task = Todo.sudo().create({'name':'Admin Task'}) with self.assertRaises(AccessError): Todo.browse([task.id]) 因为env使用的是Demo用户,我们使用sudo()方法将上下文更改为admin用户。然后,我们使用admin来创建一条任务,这个任务Demo 用户应该无法访问。 当尝试访问这条任务数据时,我们期望抛出一个AccessError异常。 如果我们现在运行测试,它们应该失败,然后抛出异常让我们来处理。
返回至
测试安全访问权限
。
导航菜单
个人工具
登录
命名空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
odoo 中文开发手册
odoo 开发参考
odoo 实施笔记
Odoo 最佳方案
关于 OdooV
Odoo FAQ
工具
链入页面
相关更改
特殊页面
页面信息
友情链接
odoo官网
odoo中文网
odoo实施