IDM身份管理系统是为解决企业内部多系统之间的用户信息不一致而开发的,主要定位于解决企业在5A功能上的需求,即:Account账号管理、Authentication认证管理、Authorization授权管理、Audit审计管理、App Control应用管控5个方面的实际需求,进而规范用户身份信息,保证系统安全,提高工作效率。
在产品开发过程中,测试是很重要的步骤,通过测试可以提前发现潜在的错误,再对产品进行修改与完善,规避一些潜在风险,从而提高产品质量。如果不重视测试工作,上线的产品出现问题的可能性就会加大,导致客户对产品及公司产生不满。因此,对于程序员来说做好测试工作十分重要。近期我参与了IDM统一权限功能测试的工作,现将学习经验和心得体会总结如下。
1.产品介绍
IDM身份管理平台满足对企业信息系统的统一用户管理、统一身份认证、统一授权管理以及安全审计的要求,能够实现各业务系统的统一登录和集中访问,实现用户身份和权限的统一认证与授权管理,为企业不同的业务系统提供统一的用户管理和认证服务。
1.1.功能架构
1.基础管理:包括组织管理、角色管理、人员管理,系统操作员可以录入操作信息,新录入的信息需要流程审核之后才能生效。
2.应用管理:包括应用配置和应用分组,对各个应用系统的相关信息进行配置,可以设置不同分组,方便管理应用配置中的数据。
3.操作管理:对基础管理模块中的操作统一进行管理,可以进行提交、生成任务及审核等操作。
4.统一权限:对其他应用系统的数据资源、接口资源和功能资源信息及对应的权限进行管理。
5.统计分析:让客户从不同角度了解信息变化,页面使用echarts图表形式显示统计信息,点击图表会跳转到对应的功能模块或弹出过滤后的列表信息页面。
6.系统管理:对IDM系统的基本功能进行管理。
1.2.数据架构
下面是9个分类包含的相关表:
分类 | 编码 | 名称 |
系统表 (共计12张表) | sys_log_202008 | 系统日志表(月表) |
sys_codetype | 编码类别表 | |
sys_codelist | 编码定义表 | |
sys_function | 功能菜单表 | |
sys_handler | 控制器表 | |
sys_operation | 系统操作表 | |
sys_seq_num | 组织人员岗位编码序号表 | |
sys_var_define | 系统全局变量定义表 | |
sys_var_defentry | 系统全局变量值表 | |
sys_onlinecount | 在线计数表 | |
wcm_general_group | 上传文件分组表 | |
wcm_general_resource | 上传文件资源表 | |
应用表(共计10张表) | idm_app_group | 应用分组表 |
sso_application | 应用表 | |
idm_app_group_rel | 应用分组关联表 | |
sso_app_param | 应用参数表 | |
sso_app_user_param | 应用用户参数关联表 | |
idm_app_menu_handler | 应用菜单控制器表 | |
idm_app_menu_operation | 应用菜单操作表 | |
idm_app_menu_rel | 应用与菜单关联表 | |
idm_app_obj_rel | 应用与操作对象关联表 | |
idm_base_app_rel | 应用与基础信息关联表 | |
基础信息表(共计10张表) | idm_orgnazition_imp_202004 | 组织临时表 |
idm_orgnazition | 组织表 | |
idm_position | 角色表 | |
idm_position_imp_202002 | 角色临时表 | |
idm_pos_org_rel | 角色关联组织表 | |
idm_employee | 人员表 | |
idm_emp_org_rel | 人员关联组织表 | |
idm_emp_op_rel | 人员关联角色表 | |
idm_emp_auth | 人员权限表 | |
idm_org_auth | 组织权限表 | |
idm_pos_auth | 岗位权限表 | |
系统权限表(共计10张表) | security_group | 系统组织表 |
security_user | 系统用户表 | |
security_role | 系统角色表 | |
security_user_rg_rel | 系统实际角色和人员关联表 | |
security_user_group_rel | 系统组织和人员关联表 | |
security_role_group_rel | 系统实际角色表表 | |
security_group_auth | 组织权限表 | |
security_user_auth | 人员权限表 | |
security_rg_auth | 实际角色权限表 | |
security_role_auth | 标准角色权限表 | |
微门户表(共计4张表) | pt_desktop_group | 应用门户分组表 |
pt_desktop_app | 应用门户表 | |
idm_page_configs | 页面配置表 | |
idm_page_widgets | 页面组件表 | |
日志相关表(共计4张表) | sys_log_202009 | 同步日志表(月表) |
idm_dispatch_logs_202009 | 分发日志表(月表) | |
cas_log_202009 | 认证日志表(月表) | |
idm_dispatch_pwd_logs | 密码修改日志表 | |
通知预警相关表(共计7张表) | alarm_policy_config | 策略配置表 |
alarm_sync_info | 同步提醒信息表 | |
alarm_oper_info | 同步提醒信息表 | |
alarm_disp_info | 同步提醒信息表 | |
alarm_auth_info | 同步提醒信息表 | |
alarm_deal_log | 处理提醒日志表 | |
alarm_note_log | 发送提醒日志表 | |
流程相关表(共计15张表) | wf_work_item | 流程工作表 |
wf_work_draft | 流程草稿表 | |
wf_var_define | 流程全局定义变量 | |
wf_var_defentry | 流程全局值变量 | |
wf_inst_variable | 流程变量表 | |
wf_inst_process | 待办流程表 | |
wf_inst_activity, | 待办节点表 | |
wf_img_rel | 流程图标表 | |
wf_his_process | 流程历史表 | |
wf_his_activity | 流程历史节点表 | |
wf_def_transition | 流程联系表 | |
wf_def_process | 流程定义表 | |
wf_def_activity | 流程节点表 | |
统一权限相关表 共(16张) | idm_orgnazition | 组织表 |
idm_employee | 人员表 | |
res_open_api | 资源-API接口表 | |
res_genr_data | 资源-通用数据表 | |
res_function | 资源-功能菜单表 | |
res_func_opera | 资源-功能操作表 | |
res_func_handler | 资源-功能页面表 | |
pri_user_auth | 用户资源关联表 | |
pri_ror_user_rel | 实际角色人员关联表 | |
pri_role_user_rel | 标准角色人员关联表 | |
pri_role_org_rel | 实际角色表 | |
pri_role_auth | 标准角色资源关联表 | |
pri_role | 标准角色表 | |
pri_rg_auth | 实际角色资源关联表 | |
pri_org_auth | 组织资源关联表 | |
pri_app_res_rel | 应用资源关联定义表 |
2.角色管理
该模块有2个功能,一个是对各个应用系统标准角色的注册功能,另一个是对各个应用系统实际角色的注册功能,支持手动导入和接口导入。标准角色功能和实际角色功能主要为不同应用系统下的标准角色关联用户信息以及不同应用系统组织下的实际角色关联人员信息,实现对角色信息的权限管控。
2.1.测试功能
主要测试标准角色和实际角色模块的下载模板、导入、生成任务功能。
2.2.测试步骤
1.下载模板
在“角色基本信息”页面点击“下载模板”按钮,测试下载的excel模板中的信息是否正确。
2.导入
在下载的excel模板中填入对应的信息,然后点击“导入”按钮,选择对应的文件,点击“上传”,上传成功后会在页面显示对应的导入信息。
3.生成任务
选中左侧节点,然后点击“生成任务”按钮,可以生成不同操作类型以及操作对象任务,还会生成对应的操作信息。
2.3.测试结果
1.下载模板
点击“下载模板”按钮,在弹出窗口选择接口导入,会下载一个“.xml”文件。
选择“excel导入”后会下载一个“.xls”的文件,表格中会显示用户需要填写的字段和填写规则。
2.导入
下载excel模板后,填写对应字段的值到模板文件中。
标准角色数据记录导入完成后可以在数据表pri_role中查看新添的标准角色信息。
3.生成任务
在生成任务操作中可以生成对应的操作和任务,在工作任务模块显示。
3.权限资源
该模块有3个功能,功能资源模块主要对各个应用系统的功能菜单、控制器以及操作信息进行管理;数据资源模块主要对各个应用系统下的通用枚举类数据进行管理;接口资源主要是对各个应用系统下的接口信息进行管理。
3.1.测试功能
主要对该模块的下载模板和导入功能进行测试。
3.2.测试步骤
1.下载模板
点击“下载模板”按钮,测试下载的excel模板中的信息是否正确。
2.导入
在下载的excel模板中填入对应的信息,然后点击“导入”按钮,选择对应的文件,点击“上传”,上传成功后会先页面显示对应的导入信息。
3.3.测试结果
1.下载模板、导入
下载excel导入模板之后,填写对应字段的值到模板文件中。
点击“导入”按钮,将填完值的excel文件上传之后,可以在“res_function”表中查看新添的功能资源信息,页面也会显示对应的信息。
4.授权管理
授权管理模块主要为各个应用系统的不同权限资源建立和标准角色、实际角色、人员、组织的关联关系。分为功能菜单、数据资源、API接口三个标签,分别为这三个权限资源赋予权限。
4.1.测试功能
主要对各个标签页面的添加、删除、清空操作进行测试。
4.2.测试步骤
1.添加
点击“添加”按钮,在弹出页面选择需要添加的信息,然后点击“确定”,测试对应的信息是否添加成功。
2.删除
选中一条权限信息,点击“删除”按钮,测试对应的权限信息是否删除。
3.清空
点击“清空”按钮,测试对应的权限信息是否被清空。
4.3.测试结果
1.添加
点击“添加”按钮,勾选需要添加的角色,然后点击“确定”,会在页面显示对应添加的角色信息。
2.删除
点击“删除”按钮,会将选择的权限信息删除。
3.清空
点击“清空”按钮,会将对应的权限信息全部清空。
5.心得体会
通过本次参与IDM统一权限功能的测试工作,我了解到测试在产品开发中的重要性,通过测试可以发现产品的一些潜在问题,能够使产品达到预期的效果,满足客户的需求,提高客户的满意度。现在将我在本次工作中的收获总结如下。
5.1.能力提升
通过本次对IDM统一权限功能的测试,我懂得了测试的重要性,之前一直认为测试不如开发重要,这样的想法是不对的,如果不测试,就不知道开发的功能是否可以满足客户需求,而且还有出现问题的可能,会导致用户在使用时出现错误,导致客户的不满。因此测试是必不可少的步骤,一个好的产品是通过测试进行打磨的。
5.2.意识形态
在本次工作过程中,我在意识形态方面有了一些提升,比如在工作中要勤于总结,在遇到问题时要及时和领导沟通交互,只有这样问题才能得到很好的解决。另外工作中不要拿自己当小弟培养,领导让干什么就干什么,而是要自己多想一些事情。遇到问题不要试图耍小聪明试图遮掩要及时暴露出来。
5.3.总结反思
对于开发人员来说,对自己开发出来的功能进行测试时,往往会形成一种思维定式,功能按照自己的开发过程进行操作,没有出现什么问题就感觉功能已经完善了。这个想法是错误的,在测试自己开发的功能时,要换位思考,跳出思维定式,不要按照自己原本想的过程进行操作,而是要从客户的角度来操作功能,这样才能满足客户的需求。
通过参与IDM统一权限的开发及测试工作,发现对自己开发出的功能进行测试时,会出现很多问题,需要多次的修改才能才能使功能满足客户的需求,经过思考和总结,出现这种问题的主要原因使因为自己在开发功能时没有多方面的考虑问题,只考虑到本次开发的功能,没有考虑其它的功能是否会受到影响,导致给自己的工作带来不必要的麻烦。所以,以后不论是开发还是测试都要学会换位思考,从多方面考虑问题,这样才能不断提升自己的能力。