软件项目自动检测系统及方法

文档序号:10534730阅读:707来源:国知局
软件项目自动检测系统及方法
【专利摘要】本发明公开软件项目自动检测系统及方法,该系统包括:项目远程服务器、源码管理集群、数据库服务器、检测模块以及交互平台,源码管理集群包括一个或多个源码管理服务器;项目远程服务器用于为源码管理集群、数据库服务器以及交互平台提供服务,源码管理服务器用于对用户提交的代码数据进行管理;数据库服务器用于存储各数据;检测模块用于将用户提交的代码数据进行检测,并将检测结果保存于数据库服务器中;交互平台用于为管理员提供交互页面,管理员通过该交互平台对用户提交的代码数据的测试结果进行查阅、统计和分析。本发明软件项目自动检测系统及方法可以有效进行软件项目的测试,且对用户的行为和提交过程进行掌握和跟踪。
【专利说明】
软件项目自动检测系统及方法
技术领域
[0001]本发明涉及一种软件项目自动检测系统及方法。
【背景技术】
[0002]对于学生和软件开发测试人员,在软件项目的进行过程中,需要对软件代码进行测试,然而现有的测试系统结构复杂,操作复杂,且无法对用户的行为和提交过程进行掌握和跟踪。
[0003]故一种结构简单、操作便捷的软件项目自动检测系统及方法亟待提出。

【发明内容】

[0004]为了解决上述技术问题,本发明提出了软件项目自动检测系统及方法,该系统框架结构合理,该检测方法操作便捷,且其可以有效对用户的行为和提交过程进行掌握和跟踪,尤其适用于教学系统。
[0005]为了达到上述目的,本发明的技术方案如下:
[0006]软件项目自动检测系统包括:项目远程服务器、源码管理集群、数据库服务器、检测模块以及交互平台,源码管理集群包括一个或多个源码管理服务器;
[0007]项目远程服务器分别与源码管理集群、数据库服务器以及交互平台连接,项目远程服务器用于为源码管理集群、数据库服务器以及交互平台提供服务,项目远程服务器定期从源码管理服务器中同步用户的操作数据,并将收集到的该操作数据进行分析和计算,将计算结果录入数据库服务器中;
[0008]源码管理服务器分别与项目远程服务器和检测模块连接,源码管理服务器用于对用户提交的代码数据进行管理;
[0009]数据库服务器分别与项目远程服务器、检测模块以及交互平台连接,数据库服务器用于存储各数据;
[0010]检测模块分别与源码管理服务器和数据库服务器连接,检测模块用于将用户提交的代码数据进行检测,并将检测结果保存于数据库服务器中;
[0011]交互平台分别与项目远程服务器和数据库服务器连接,交互平台用于为管理员提供交互页面,管理员通过该交互平台对用户提交的代码数据的测试结果进行查阅、统计和分析。
[0012]本发明软件项目自动检测系统框架结构合理,可以有效进行软件项目的测试,且对用户的行为和提交过程进行掌握和跟踪。
[0013]在上述技术方案的基础上,还可做如下改进:
[0014]作为优选的方案,源码管理服务器与用户端连接,用户端从源码管理服务器下载或上传项目资源框架,用户利用该项目资源框架进行软件项目的测试。
[0015]采用上述优选的方案,用户利用项目资源框架进行软件项目的测试,对于不同的测试方案,更换项目资源框架即可。
[0016]作为优选的方案,检测模块包括:测试单元和编译单元;
[0017]测试单元从源码管理服务器下载代码数据,并将该代码数据发送给编译单元进行编译执行,编译单元将编译执行后的执行结果返回给测试单元,测试单元将该执行结果与正确答案进行匹配,得出测试结果。
[0018]采用上述优选的方案,结构简单,利用检测模块对用户提交的代码数据进行自动检测。
[0019 ]作为优选的方案,检测模块还包括:定时控制单元,定时控制单元控制测试单元定时从一个或多个源码管理服务器下载代码数据进行统一处理,测试单元将该代码数据发送给编译单元进行编译执行,编译单元将编译执行后的执行结果返回给测试单元,测试单元将该执行结果与正确答案进行匹配,得出测试结果。
[0020]采用上述优选的方案,利用定时控制单元对测试单元和编译单元进行定时,控制其对代码数据进行定时统一处理,提高检测效率,降低能耗。
[0021 ]作为优选的方案,测试单元将测试结果发送给数据库服务器进行存储,交互平台从数据库服务器中下载测试结果,并将该测试结果在交互平台上进行展示。
[0022]采用上述优选的方案,便于管理员进行查阅。
[0023]作为优选的方案,管理员通过交互平台创建、修改、删除对应的项目资源框架,且将更新后的项目资源框架发送给数据库服务器进行存储。
[0024]采用上述优选的方案,管理员可以通过交互平台对项目资源框架进行管理。
[0025]作为优选的方案,源码管理服务器为SVN服务器,用户端为SVN客服端。
[0026]采用上述优选的方案,结构简单。
[0027]作为优选的方案,管理员可通过交互平台对用户的使用权限进行管理。
[0028]采用上述优选的方案,对用户进行管理。
[0029]软件项目自动检测方法,利用软件项目自动检测系统进行检测,包括以下步骤:
[0030]I)用户端从源码管理服务器下载项目资源框架,用户利用该项目资源框架进行软件项目的测试,提交代码数据;
[0031]2)项目远程服务器定期从源码管理服务器中同步用户的操作数据,并将收集到的该操作数据进行分析和计算,将计算结果录入数据库服务器中;
[0032]3)测试单元从源码管理服务器下载用户提交的代码数据,并将该代码数据发送给编译单元进行编译执行,编译单元将编译执行后的执行结果返回给测试单元,测试单元将该执行结果与正确答案进行匹配,得出测试结果;
[0033]4)测试单元将测试结果发送给数据库服务器进行存储,交互平台从数据库服务器中下载测试结果,并将该测试结果在交互平台上进行展示。
[0034]本发明一种软件项目自动检测方法操作便捷。
[0035]作为优选的方案,步骤2)还包括:定时控制单元控制测试单元定时从一个或多个源码管理服务器下载代码数据进行统一处理,测试单元将该代码数据发送给编译单元进行编译执行,编译单元将编译执行后的执行结果返回给测试单元,测试单元将该执行结果与正确答案进行匹配,得出测试结果。
[0036]采用上述优选的方案,利用定时控制单元对测试单元和编译单元进行定时,控制其对代码数据进行定时统一处理,提高检测效率,降低能耗。
【附图说明】
[0037]图1为本发明实施例提供的软件项目自动检测系统的结构示意图。
[0038]其中:I项目远程服务器、2数据库服务器、3交互平台、4源码管理服务器、5用户端、6检测模块。
【具体实施方式】
[0039]下面结合附图详细说明本发明的优选实施方式。
[0040]如图1所示,为了达到本发明的目的,软件项目自动检测系统的其中一些实施例中,
[0041]软件项目自动检测系统包括:项目远程服务器1、源码管理集群、数据库服务器2、交互平台3以及检测模块6,源码管理集群包括一个或多个源码管理服务器4。
[0042]项目远程服务器I分别与源码管理集群、数据库服务器2以及交互平台3连接,项目远程服务器I用于为源码管理集群、数据库服务器2以及交互平台3提供服务,项目远程服务器I定期从源码管理服务器4中同步用户的操作数据,并将收集到的该操作数据进行分析和计算,将计算结果录入数据库服务器2中;
[0043]源码管理服务器4分别与项目远程服务器I和检测模块6连接,源码管理服务器4用于对用户提交的代码数据进行管理;
[0044]数据库服务器2分别与项目远程服务器1、检测模块6以及交互平台3连接,数据库服务器2用于存储各数据;
[0045]检测模块6分别与源码管理服务器4和数据库服务器2连接,检测模块6用于将用户提交的代码数据进行检测,并将检测结果保存于数据库服务器2中;
[0046]交互平台3分别与项目远程服务器I和数据库服务器2连接,交互平台3用于为管理员提供交互页面,管理员通过该交互平台3对用户提交的代码数据的测试结果进行查阅、统计和分析。
[0047]源码管理服务器4与用户端5连接,用户端5从源码管理服务器4下载或上传项目资源框架,用户利用该项目资源框架进行软件项目的测试。在本实施例中,源码管理服务器4为SVN服务器,用户端5为SVN客服端。
[0048]检测模块6包括:测试单元和编译单元;测试单元从源码管理服务器4下载代码数据,并将该代码数据发送给编译单元进行编译执行,编译单元将编译执行后的执行结果返回给测试单元,测试单元将该执行结果与正确答案进行匹配,得出测试结果。测试单元将测试结果发送给数据库服务器2进行存储,交互平台从数据库服务器2中下载测试结果,并将该测试结果在交互平台3上进行展示。
[0049]管理员通过交互平台3创建、修改、删除对应的项目资源框架,且将更新后的项目资源框架发送给数据库服务器2进行存储。管理员可以通过交互平台3对项目资源框架进行管理。
[0050]软件项目自动检测方法,利用软件项目自动检测系统进行检测,包括以下步骤:[0051 ] I)用户端5从源码管理服务器4下载项目资源框架,用户利用该项目资源框架进行软件项目的测试,提交代码数据;
[0052]2)项目远程服务器I定期从源码管理服务器4中同步用户的操作数据,并将收集到的该操作数据进行分析和计算,将计算结果录入数据库服务器中;
[0053]3)测试单元从源码管理服务器4下载用户提交的代码数据,并将该代码数据发送给编译单元进行编译执行,编译单元将编译执行后的执行结果返回给测试单元,测试单元将该执行结果与正确答案进行匹配,得出测试结果;
[0054]4)测试单元将测试结果发送给数据库服务器2进行存储,交互平台3从数据库服务器中下载测试结果,并将该测试结果在交互平台上进行展示。
[0055]项目远程服务器I用于为源码管理集群、数据库服务器2以及交互平台3提供服务,定期同步SVN日志,定期根据项目脚手架模板在SVN中创建SVN项目,定期SVN中项目权限同步、定期更新项目状态:项目开始、项目到期,项目状态维护,实时修改SVN服务上文件夹权限。源码管理服务器4运行产生的代码提交等相关操作日志记录是为进行数据跟踪分析提供数据源。项目远程服务器I访问源码管理服务器4进行文件上传下载、获取操作日志、获取单个文件差异数据。项目远程服务器I通过WMI操作源码管理服务器4上仓库、目录、用户、权限的创建修改等。用户平台3通过项目远程服务器I操作源码管理服务器4上权限的创建、修改、删除等。
[0056]管理员通过交互平台3创建、修改、删除对应的项目资源框架,用户利用项目资源框架进行软件项目的测试,对于不同的测试方案,更换项目资源框架即可。管理员可通过交互平台3对项目进行管理,控制相应的项目处于暂停、继续、停止三种状态中的一种。
[0057]本发明提出了软件项目自动检测系统及方法,该系统框架结构合理,该检测方法操作便捷,且其可以有效对用户的行为和提交过程进行掌握和跟踪,尤其适用于教学系统,其中管理员可以为教师,用户可以为学生。学生可以利用该软件项目自动检测系统对软件课程进行学习,为了提高软件课程的学习效果,降低老师的劳动强度,且通过该软件项目自动检测系统,可以对学生的行为和提交过程进行掌握和跟踪,老师可以对器行为过程进行分析,更深层次的了解学生的学习动态,提高学生的学习效果。
[0058]为了进一步地优化本发明的实施效果,在另外一些实施方式中,其余特征技术相同,不同之处在于,检测模块6还包括:定时控制单元,定时控制单元控制测试单元定时从一个或多个源码管理服务器4下载代码数据进行统一处理,测试单元将该代码数据发送给编译单元进行编译执行,编译单元将编译执行后的执行结果返回给测试单元,测试单元将该执行结果与正确答案进行匹配,得出测试结果。
[0059]软件项目自动检测方法中的步骤2)还包括:定时控制单元控制测试单元定时从一个或多个源码管理服务器下载代码数据进行统一处理,测试单元将该代码数据发送给编译单元进行编译执行,编译单元将编译执行后的执行结果返回给测试单元,测试单元将该执行结果与正确答案进行匹配,得出测试结果。
[0060]采用上述优选实施例的方案,利用定时控制单元对测试单元和编译单元进行定时,控制其对代码数据进行定时统一处理,提高检测效率,降低能耗。
[0061]为了进一步地优化本发明的实施效果,在另外一些实施方式中,其余特征技术相同,不同之处在于,管理员可通过交互平台3对用户的使用权限进行管理。
[0062]采用上述优选实施例的方案,管理员可以对用户进行管理,适用于不同的场合和环境。
[0063]以上的仅是本发明的优选实施方式,应当指出,对于本领域的普通技术人员来说,在不脱离本发明创造构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
【主权项】
1.软件项目自动检测系统,其特征在于,包括:项目远程服务器、源码管理集群、数据库服务器、检测模块以及交互平台,所述源码管理集群包括一个或多个所述源码管理服务器; 所述项目远程服务器分别与所述源码管理集群、所述数据库服务器以及所述交互平台连接,所述项目远程服务器用于为所述源码管理集群、所述数据库服务器以及所述交互平台提供服务,所述项目远程服务器定期从所述源码管理服务器中同步用户的操作数据,并将收集到的该操作数据进行分析和计算,将计算结果录入所述数据库服务器中; 所述源码管理服务器分别与所述项目远程服务器和所述检测模块连接,所述源码管理服务器用于对用户提交的代码数据进行管理; 所述数据库服务器分别与所述项目远程服务器、所述检测模块以及所述交互平台连接,所述数据库服务器用于存储各数据; 所述检测模块分别与所述源码管理服务器和所述数据库服务器连接,所述检测模块用于将用户提交的代码数据进行检测,并将检测结果保存于所述数据库服务器中; 所述交互平台分别与所述项目远程服务器和所述数据库服务器连接,所述交互平台用于为管理员提供交互页面,管理员通过该交互平台对用户提交的代码数据的测试结果进行查阅、统计和分析。2.根据权利要求1所述的软件项目自动检测系统,其特征在于,所述源码管理服务器与用户端连接,所述用户端从所述源码管理服务器下载或上传项目资源框架,用户利用该项目资源框架进行软件项目的测试。3.根据权利要求2所述的软件项目自动检测系统,其特征在于,所述检测模块包括:测试单元和编译单元; 所述测试单元从所述源码管理服务器下载代码数据,并将该代码数据发送给所述编译单元进行编译执行,所述编译单元将编译执行后的执行结果返回给所述测试单元,所述测试单元将该执行结果与正确答案进行匹配,得出测试结果。4.根据权利要求3所述的软件项目自动检测系统,其特征在于,所述检测模块还包括:定时控制单元,所述定时控制单元控制所述测试单元定时从一个或多个所述源码管理服务器下载代码数据进行统一处理,所述测试单元将该代码数据发送给所述编译单元进行编译执行,所述编译单元将编译执行后的执行结果返回给所述测试单元,所述测试单元将该执行结果与正确答案进行匹配,得出测试结果。5.根据权利要求3或4所述的软件项目自动检测系统,其特征在于,所述测试单元将所述测试结果发送给所述数据库服务器进行存储,所述交互平台从所述数据库服务器中下载测试结果,并将该测试结果在所述交互平台上进行展示。6.根据权利要求5所述的软件项目自动检测系统,其特征在于,管理员通过所述交互平台创建、修改、删除对应的所述项目资源框架,且将更新后的项目资源框架发送给所述数据库服务器进行存储。7.根据权利要求6所述的软件项目自动检测系统,其特征在于,管理员可通过所述交互平台对用户的使用权限进行管理。8.根据权利要求7所述的软件项目自动检测系统,其特征在于,所述源码管理服务器为SVN服务器,所述用户端为SVN客服端。9.软件项目自动检测方法,其特征在于,利用权利要求3-8任一项所述的软件项目自动检测系统进行检测,包括以下步骤: 1)用户端从源码管理服务器下载项目资源框架,用户利用该项目资源框架进行软件项目的测试,提交代码数据; 2)项目远程服务器定期从源码管理服务器中同步用户的操作数据,并将收集到的该操作数据进行分析和计算,将计算结果录入所述数据库服务器中; 3)测试单元从源码管理服务器下载用户提交的代码数据,并将该代码数据发送给编译单元进行编译执行,编译单元将编译执行后的执行结果返回给测试单元,测试单元将该执行结果与正确答案进行匹配,得出测试结果; 4)测试单元将测试结果发送给所述数据库服务器进行存储,交互平台从数据库服务器中下载测试结果,并将该测试结果在交互平台上进行展示。10.根据权利要求9所述的软件项目自动检测方法,其特征在于,所述步骤2)还包括:定时控制单元控制所述测试单元定时从一个或多个所述源码管理服务器下载代码数据进行统一处理,所述测试单元将该代码数据发送给所述编译单元进行编译执行,所述编译单元将编译执行后的执行结果返回给所述测试单元,所述测试单元将该执行结果与正确答案进行匹配,得出测试结果。
【文档编号】G06F11/36GK105893265SQ201610503082
【公开日】2016年8月24日
【申请日】2016年6月30日
【发明人】殷振华, 孙亮
【申请人】苏州科大讯飞教育科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1