论文部分内容阅读
目前,软件领域在不断的进行发展,在软件产品高速发展的情况下,对于产品的质量控制也不断的受到更多的重视,同时也成为企业发展的重点关注点。而软件测试作为对软件产品的质量检测手段,在软件项目中也占据大量的比例,需要投入大量的人力和时间资源。自动化测试工具的开发已经为软件测试减少了大部分的重复劳动力,但是对于失败测试日志的分析仍然需要投入大量的人工劳动力。针对Sybase ASE数据库产品测试后,对于测试用例的错误日志分析,有着大量的重复性劳动量,以及固定的处理和分析问题流程,再结合文本分析、文本向量模型和文本相似度相关知识,设计和实现数据库产品软件测试错误日志分析处理工具,从而解放大量人力资源。针对ASE数据库产品测试已存在自动化测试工具Grid,可以对测试用例遍历执行,自动上传成功结果,但是无法对失败结果进行分析。经过Grid工具之后还存在着不少的执行失败的测试用例,其中大部分错误信息可以根据环境的设置或者关联已知存在的Bug得到解决,在这方面的人工手动分析占据大量的时间和人力资源。为了减少在人工测试中大量的重复分析工作,进一步减少软件测试中的人力输出,针对ASE数据库产品测试日志语言构成和文本结构特点,加上日志分析的固定步骤,本文通过对测试用例日志关键字进行提取分析,结合波特词根算法,TF-IDF算法建立文本向量模型,通过文本相似度匹配从而进行对错误信息的各种处理操作。本系统的主要功能有:1.文件预处理,对Grid自动化测试结果进行分析处理,得到失败测试用例信息,提取失败测试用例日志信息后进行基础信息处理工作;2.文本信息简化,对错误日志进行多次正则匹配滤除干扰信息,再结合停止词列表和波特词根算法对日志中信息进行简化,得到错误日志关键信息;3.文本向量计算,设计特征词,根据特征词使用TF-IDF算法,对错误文本生成维度相同的文本向量模型,便于之后文本处理工作;4.文本信息处理,根据当前错误日志生成的文本向量与数据库中信息进行比对并分别进行以下处理工作:设置环境后重新执行测试用例、关联相关Bug、生成新Bug模板、搜索相似Bug信息。同时需要对系统进行合理的数据库设计,包括数据库的建立、初始化、备份恢复及数据更新。目前此系统已应用于ASE项目组,测试结果表明,采用本系统能对测试用例错误日志进行智能分析,从而减少大量的人工劳动。