在权限管理设计中,经典的权限管理设计是用户-角色-菜单三级绑定结构。角色绑定菜单、用户绑定角色,以此来时效内用户绑定菜单的权限设计。
我们可以运用等价类划分和边界值,来设计测试用例,如下:
- 用户不绑定角色,直接登录,登录失败。
- 用户绑定角色,角色不绑定菜单,登录失败。
- 用户绑定一个角色,角色绑定菜单,登录后菜单的权限就是该角色的菜单权限。
- 用户绑定多个角色,角色绑定菜单,登录后菜单的权限是多个角色菜单权限的并集。
- 用户绑定一个角色,角色绑定一个菜单,登录后菜单的权限只有角色绑定的1个。
- 用户绑定一个角色,角色绑定多个菜单,登录后菜单的权限只有角色绑定的这些菜单。
- 用户A绑定x角色,用户B绑定y角色,A登录后有x角色权限,B有y权限。
用例解释:
- 用例1/2用等价类考虑用户与角色绑定、不绑定的情况;
- 用例2/3用等价类考虑了角色与菜单绑定、不绑定的情况;
- 用例3/4用等价类考虑了用户绑定角色绑定1个和多个的情况,权限是角色权限的并集。
- 用例5/6用等价类考虑角色绑定菜单1个和多个情况。
- 用例7考虑权限与不同用户绑定情况,防止权限只能绑定在1个用户上情况。