[发明专利]一种代码自动化校验方法和系统在审
申请号: | 201711212099.1 | 申请日: | 2017-11-28 |
公开(公告)号: | CN107943701A | 公开(公告)日: | 2018-04-20 |
发明(设计)人: | 马伟奇;张泽华;肖琦;唐杨 | 申请(专利权)人: | 江苏传智播客教育科技股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京君尚知识产权代理事务所(普通合伙)11200 | 代理人: | 司立彬 |
地址: | 223800 江苏省宿迁市阳*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 代码 自动化 校验 方法 系统 | ||
技术领域
本发明属于计算机软件技术领域,涉及一种代码自动化校验方法和系统。
背景技术
自动检测技术已经得到广泛应用,其不仅能够减轻工作人员工作压力,而且可以减少人们对检测结果有意或无意的干扰,避免受到主观因素影响。
然而现有的代码校验方法都是人工校验,纯手工浪费人力,且经常包含人的主观因素并非客观。
人工校验存在的问题:基于人工校验的信息,经常包含人的误差影响,
校验特点:对未通过测试的代码自动进行重复测试,从而有效减少误差,提高测试效率,
降低对服务器资源的请求次数,减轻服务器压力。
发明内容
针对现有技术中存在的技术问题,本发明的目的在于提供一种代码自动化校验方法和系统。
本发明的技术方案为:
一种代码自动化校验方法,其步骤包括:
1)服务器接收客户端发送过来的题目信息及代码;其中,每一题目设置若干得分点和对应的测试脚本;
2)服务器根据收到的题目信息对收到的对应代码进行检测,判断该代码中的各得分点信息与对应的设定值是否匹配,并根据匹配结果给出对应的分值;
3)服务器运行该代码,并根据运行结果给出对应的分值;然后根据匹配结果对应的分值和运行结果对应的分值确定该代码的得分。
进一步的,所述客户端设置一防作弊系统,用于检测客户端的鼠标坐标数据是否超出编辑器窗口;如果超出一次,则视为一次作弊并将所述代码的输入过程中产生的作弊次数发送给所述服务器。
进一步的,所述服务器根据该代码对应的作弊次数、匹配结果对应的分值和运行结果对应的分值确定该代码的得分。
进一步的,所述运行结果包括运行时间、运行占用的内存、运行出错的次数;根据所述运行结果中的各项信息与对应预期值进行比较给出对应的分值。
进一步的,根据匹配结果给出对应的分值的方法为:判断该代码中的方类名,法的名称、方法的返回值以及方法的返回值类型是否与对应的设定值匹配,对于匹配的项给出对应的分值。
一种代码自动化校验系统,其特征在于,包括客户端和服务器;其中,
所述客户端,用于接收用户根据题目信息输入的代码,并将题目信息及代码发送给服务器;其中,每一题目设置若干得分点和对应的测试脚本;
所述服务器,用于根据收到的题目信息对收到的对应代码进行检测,判断该代码中的各得分点信息与对应的设定值是否匹配,并根据匹配结果给出对应的分值;以及用于运行该代码,并根据运行结果给出对应的分值;然后根据匹配结果对应的分值和运行结果对应的分值确定该代码的得分。
本发明主要具有以下优点:
1、通过反射字节码读取配置文件,根据客户端和服务器定义一种交互协议,从而进行识别检测程序,保证了检测正确性。
2、在考试系统的程序检测中,通过重复检测得分点,有效的减小程序误差。
本发明不仅能自动完成校验、数据处理、显示(输出),而且更好地利用资源,将繁琐的任务自动化,还可以解决执行一些手工校验困难或不可能进行的检验。
本发明可以解决同时支持任何规模的考试,系统对于数据的录入的问题,体现教学的双边性和互动性的问题;智能检测系统减少了老师改卷过程中的人力成本、提升了教学本质。
附图说明
图1为本发明核心业务逻辑图;
图2为被测学员的输出代码检测流程图;
图3为本发明的系统架构图。
具体实施方式
为使本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图作详细说明如下。
一:检测系统架构分析
1、采用C/S技术结构,加入网页前端技术,题目通过网页来实现,但主要业务逻辑在服务器端(Server)实现。这样就大大简化了客户端载荷。
2、减轻了系统维护与升级的成本和工作量,完全适应网络控制和移动控制需求。
二:本发明的系统框架如图3所示,其包括人机交互系统、远程服务器系统、控制系统、客户端自动化验证装置、检测系统和防作弊系统。本发明核心业务逻辑如图1所示。
控制系统:自动检测系统的核心,由云端服务器组成。它是在检测程序的作用下,对代码的每一步骤进行控制。
本发明的方法流程如下:
1:先用kotlin语言根据试题的内容,通过IO流写入的方式,来生成模版文件,模版文件的作用是让学生在此基础上进一步编写代码。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏传智播客教育科技股份有限公司,未经江苏传智播客教育科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711212099.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种自动修复bug的方法及系统
- 下一篇:硬件兼容性测试方法及装置