论文部分内容阅读
软件测试作为软件开发过程中必不可少的部分,尤其在开发和交付高质量的软件的情况下,其重要性不言而喻。随着市场对软件质量的要求不断提高,企业对高质量测试工程师的需求量越来越大。面对工业界软件测试人才需求日益增长的现状,各大高校和在线教育平台纷纷开设软件测试课程。在课程期末考核时,通过在软件测试教学平台上组织考试练习的方式鼓励学生提交测试代码。然而针对学生实际编写的测试代码,如何有效地考察测试代码,评估其测试效果,以便给出指导建议从而实现进一步的提高,成为了一个值得关注的问题。本文基于公司软件测试教学平台实现了软件测试多维评估系统,该系统旨在解决如何系统地评估学生测试效果的问题。依据高校的人才培养目标和企业要求,本系统针对开发者单元测试、Web应用自动化测试和移动应用自动化测试三种测试类型,结合测试代码和测试行为两方面,从7个维度对学生的测试效果进行评估。首先,系统获取学生的测试代码,对应不同的测试类型,选取并调用相应的测试代码分析工具对测试代码的特性进行提取。为保障代码分析过程的高可用性,采用Celery分布式系统实现分析任务的异步调度执行。其次,以分析提取到的代码特性以及学生考试提交记录数据为输入,根据不同的测试类型,应用提出的软件测试多维评估指标公式,计算得到测试评估的原始得分。由于不同指标分数在初步计算后值域不同,为了使各指标处于同一数量级,方便综合对比评价学生测试评估的结果,对分数应用标准化方法得到标准分。最后,将评估得到的指标分数整合,利用Echarts可视化库将其渲染展现供老师和学生直观全面地查看测试评估结果。同时系统支持展示各个维度的详情信息、历史评估记录以及对应的维度得分变化趋势图,通过对各维度评估详情等多方面展示,有助于树立测试能力提升的方向。本文提出的软件测试多维评估系统旨在更全面地评估学生的测试效果,其评估指标在教学平台主办的软件测试大赛中得到广泛的应用,评估结果得到大赛专家组的一致认可。该系统目前已在软件测试教学平台上使用,通过多方面评估学生的测试效果,以便帮助学生发现不足,从而推动其进步。