基于ASP.NET的BUG预置管理系统的设计与开发
2021-11-19许礼捷葛华杨广
许礼捷 葛华 杨广
(沙洲职业工学院,江苏 张家港215600)
引言
目前高职教育中与软件测试课程教学实践、软件测试赛项训练相关的实训系统相对较少,实训任务中能够针对其中的“功能测试”进行软件缺陷(BUG)自由设置和拓展的系统更是稀缺。为了满足软件测试课程授课教师实现课程中功能测试内容的授课讲解、学生学习实践以及竞赛强化训练的需要,笔者设计开发了BUG预置管理系统。该系统将有助于“功能测试”等关键理论知识的讲解、复杂操作的训练,以及软件测试课程与软件测试比赛训练中功能模块测试所需要注意的重点和难点[1],让学习者有较为深刻的理解,帮助他们在以后的软件测试相关学习和工作中能有较强的知识理论和操作技能。
1 系统设计
1.1 基于典型系统的BUG预置管理总体框架设计
BUG预置管理系统是以典型的资产管理系统作为功能测试的载体,BUG管理的基础是在资产管理系统中预置各种BUG,然后利用BUG预置管理系统对资产管理系统中的预置BUG进行操作。完成后的BUG预置管理系统不仅能用于资产管理系统,还能应用于学生管理系统、客户管理系统等。如图1所示。
图1 BUG预置管理系统总体框架
根据对BUG预置管理系统的需求分析,结合BUG预置管理系统的设计目标,确定系统的总体设计功能。该系统设计完成后,能实现BUG信息管理、BUG操作记录查询、个人信息管理、查询BUG、新增BUG、用户管理、实训软件管理、登录日志查询等[2]。
主要功能模块包括:
(1)BUG管理
实现对BUG的预置管理,主要功能包括预置BUG的新增、开启、关闭、BUG信息修改和BUG查询。
(2)BUG操作记录
实现对BUG开启、关闭等操作的日志记录查询管理等功能。
(3)基本设置
实现用户新增、修改、删除、禁用、启用等管理;实现个人信息查看、登录密码修改等功能。
(4)系统设置
实现对准备进行BUG预置的信息系统软件的维护管理;实现对管理员登录日志的管理等。
1.2 数据库设计
(1)表设计
BUG预置管理系统的数据库采用SQL Server,共建有5张数据表,如表1。
表1 BUG预置管理系统数据表
(2)数据库表关系设计
数据库表主要包括:用户信息表(tb_UserInfor)、BUG预置表(tb_BUGYZ)、BUG操作记录表(tb_BUGJL)、登录日志表(tb_LoginInfor)、系统配置表(tb_Sysconf),各表之间的关系见图2。
图2 BUG预置管理系统数据库表关系图
2 BUG预置功能的实现
2.1 BUG预置功能的流程设计
首先通过BUG预置管理系统对资产管理系统中的预置区域嵌入相应的判断代码进行BUG开关的设置,然后在资产管理系统加载页面时判断相关页面中的BUG处于何种预置状态,根据BUG预置的状态通过页面进行相应的呈现。具体的BUG预置处理流程见图3。
图3 BUG预置功能的处理流程
2.2 BUG管理功能的实现
管理员可以对BUG进行新增、修改(点击修改后,只需刷新测试系统页面即可)、查询,可以对实训系统资产系统进行详细的BUG配置。管理员也可以选择平台、角色、模块名称、类别、难易程度、开启状态、是否系统内置等条件进行查询[3]。
(1)BUG管理模块功能设计(如图4)
图4 BUG管理模块功能设计图
(2)BUG预置开关的界面设计
在界面中提供对预置BUG开启和关闭的按钮,如图5。
图5 BUG预置开关的界面设计
2.3 BUG预置功能在资产管理系统中的实现
(1)资产管理系统相关页面的BUG呈现
在资产管理系统的BUG预置区域根据BUG的开关状态实现不同的页面内容显示[4]。以某BUG预置案例为例:在资产类别的面包屑位置,应显示“资产类别”,因BUG开启实际显示“资产列表”,如图6。
图6 BUG预置案例
(2)资产管理系统BUG预置区域的核心代码
通过对BUG预置表中的开关状态的判断,实现对资产管理系统BUG预置区域相应内容的显示。以上述BUG预置案例为例,核心代码如下:
//判断Bug预置表中的bug状态,BUG预置的相关信息
3 系统的运行测试
3.1 测试用例设计与执行
在测试阶段,首先针对BUG预置管理系统和资产管理系统的各个功能模块设计编写相关的测试用例,并进行相对独立的测试。测试发现:BUG预置管理系统和资产管理系统的缺陷、问题一般比较直接,主要的缺陷、错误是编码错误和表现直接的功能性错误,对于隐藏较深的错误以及系统性严重错误问题,在一般测试中是很难发现的[5]。以资产类别模块为例,资产类别功能测试用例设计及执行结果见表2。
表2 资产类别测试表
3.2 测试结果的评价
BUG预置管理系统和资产管理系统在运行、关闭以及退出的过程中,保存记录的提示功能已基本完成,在BUG预置管理系统和资产管理系统的不断启动、关闭过程中未出现死机以及程序执行效率降低等不良现象,整套管理系统在使用过程中较为顺畅;BUG预置管理系统和嵌入BUG预置功能的资产管理系统等预期功能都得到了实现。
4 结语
利用ASP.NET技术、SQLServer 2012数据库和Visual Studio2017平台,设计实现了BUG预置系统和嵌入预置BUG的资产管理系统。该系统目前已初步应用于软件测试课程的教学实践,教师能够根据软件测试教学实践的需求,对BUG开关进行灵活的设置,合理地调配相关教学资源,从而提升信息化教学水平。同时也有助于软件测试相关竞赛项目的训练,提高学生学习和竞赛技能。