testlink是一个很好的用例管理开源组件,因为我之前也作过一个用例管理的系统,但是远没有testlink灵活,本着学习的态度,自己分析一下testlink的源代码,一点理解,和大家分享,希望能抛砖引玉。
下面来看一下testlink的数据库设计。
1 权限管理
testlink提供了丰富的权限管理,其后台数据库主要用了六个表来实现权限的管理,分别是:rights、roles、users、user_roles、user_testproject_roles、user_testplan_roles 。其中users表中保存当前注册的用户,rights表中保存权限,roles表中保存当前系统中所存在的角色,如管理员,普通用户、游客等。user_roles表中保存用户和角色的关系,比如一个用户属于那个角色。user_testproject_roles表中保存用户、项目、角色的关系,比如一个用户在某个项目中具体是哪个角色;user_testplan_roles表中保存用户、测试计划、角色之间的关系,如一个用户在某个测试计划中具有什么样的权限等。这几个表的具体注释如下:
Field | type | NULL | Key | Default | Extra | 注释 |
id | int(10) | NO | PRI | NULL | auto_increment | 权限的标示ID |
description | varchar(100 | NO |
Field | type | NULL | Key | Default | Extra | 注释 |
id | int(10) | NO | PRI | NULL | auto_increment | 角色的标示ID |
description | varchar(100 | NO | 角色的描述 | |||
note | text | YES | NULL |
明天接着写...