本发明属于服务器测试技术领域,具体涉及一种linux环境下自动测试的方法及系统。
背景技术:
随着服务器行业的高速发展,在各个领域中越来越多的客户采用计算能力更强的服务器运行自己的核心应用。为了满足高度并行化及高性能需求的客户,在推高性能服务器的同时,通用注重产品的质量、可靠性和稳定性。
为了满足客户的不同需求,提供丰富多样的服务器配置,就需要进行非常多的配置测试,也带来了很大的测试压力。所以急需一种可以在linux环境下可以自动化进行测试的方法。
技术实现要素:
为了满足客户的不同需求,提供丰富多样的服务器配置,就需要进行非常多的配置测试,测试压力大的问题,本发明提供一种linux环境下自动测试的方法及系统。
第一方面,本发明提供一种linux环境下自动测试的方法,包括如下步骤:
基于用户的导入信息生成测试用例;
将生成的测试用例转换成自动化测试指令;
读取配置信息并将自动化测试指令和读取的配置信息发送给测试终端执行测试;
输出测试日志。
进一步的,基于用户的导入信息生成测试用例,之前包括:
启动excel程序;
在excel表格中进行测试程序信息的设置;
将excel表格导入测试用例生成模块。
进一步的,在excel表格中进行测试程序信息的设置,包括:
设置测试项目、测试命令以及是否测试;
将excel表格文件存储为csv的文件格式。
进一步的,将excel表格导入测试用例生成模块,包括:
将csv格式的文件拷贝到linux系统的第一设定目录,转换模块将csv格式的文件转为xml格式的文件;
将xml格式的文件导入测试用例生成模块。
进一步的,该方法还包括:
获取执行失败的测试用例对应的测试日志;
分析测试日志提取测试日志中的查询关键词,通过提取的查询关键词在预存的测试日志分析表中查找与查询关键词匹配的关键词;
输出匹配成功的关键词对应的错误分析结论;
根据输出的错误分析结论生成测试报告。
进一步的,分析测试日志提取测试日志中的查询关键词,通过提取的查询关键词在预存的测试日志分析表中查找与查询关键词匹配的关键词,之前还包括:
从每个执行失败的测试用例的测试日志中提取关键词,确定关键词与错误分析结论的对应关系;
根据关键词与对应的错误分析结论的对应关系生成测试日志分析表并进行存储。
另一方面,本发明还提供一种linux环境下自动测试的系统,包括测试用例生成模块、测试指令转换模块、测试执行模块和日志输出模块;
测试用例生成模块,用于基于用户的导入信息生成测试用例;
测试指令转换模块,用于将生成的测试用例转换成自动化测试指令;
测试执行模块,用于接收自动化测试指令执行测试;
日志输出模块,用于输出测试日志。
进一步的,该系统还包括excel程序启动模块、测试程序信息设置模块、转换模块和导入模块;
excel程序启动模块,用于启动excel程序;
测试程序信息设置模块,用于在excel表格中进行测试程序信息的设置;其中,包括设置测试项目、测试命令以及是否测试;
测试程序信息设置模块,还用于将excel表格文件存储为csv的文件格式;
转换模块,用于将csv格式的文件拷贝到linux系统的第一设定目录,并将csv格式的文件转为xml格式的文件;
导入模块,用于将xml格式的文件导入测试用例生成模块。
进一步的,该系统还包括测试日志获取模块、测试日志分析查询模块、错误分析结论输出模块和测试报告生成模块;
测试日志获取模块,用于获取执行失败的测试用例对应的测试日志;
测试日志分析查询模块,用于分析测试日志提取测试日志中的查询关键词,通过提取的查询关键词在预存的测试日志分析表中查找与查询关键词匹配的关键词;
错误分析结论输出模块,用于输出匹配成功的关键词对应的错误分析结论;
测试报告生成模块,用于根据输出的错误分析结论生成测试报告。
进一步的,测试日志分析查询模块包括关键词提取单元、测试日志分析表生成单元:
关键词提取单元,用于从每个执行失败的测试用例的测试日志中提取关键词,确定关键词与错误分析结论的对应关系;
测试日志分析表生成单元,用于根据关键词与对应的错误分析结论的对应关系生成测试日志分析表并进行存储。
本发明的有益效果在于,创新性、实用性强,可以简单有效的在linux环境下自动进行测试的方法,并可以自主设定需要测试的项目和顺序。首先在linux系统下创建自动化测试文件夹并拷贝主控脚本,然后进行测试项目和顺序的设定,执行测试脚本,即可实现linux系统下的自动化测试,有效提高了测试效率,保障了产品和服务器的稳定性和可靠性。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例的方法的示意性流程图。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
下面对本发明中出现的关键术语进行解释。
实施例一
如图1所示,本发明提供一种linux环境下自动测试的方法,包括如下步骤:
s1:启动excel程序并在excel表格中进行测试程序信息的设置;
需要说明的是,本步骤中,设置测试项目、测试命令以及是否测试;具体包括:
module-测试模块名称
code-测试模块id
item-测试项名称
command-测试命令
selected-测试项是否执行,y为执行该测试项,n为不执行该测试项。
warning-在测试fail时输出的信息
delay-在执行测试命令之后要等待多少秒;
本实施例中,
将excel表格文件存储为csv的文件格式;将csv格式的文件拷贝到linux系统的第一设定目录,转换模块将csv格式的文件转为xml格式的文件;需要说明的是,本步骤中的第一设定目录为/usr/local/inspur/basescripts目录;转换模块csv2xml.sh将csv格式的文件转为xml格式的文件;
s2:将excel表格导入测试用例生成模块并基于用户的导入信息生成测试用例;
基于步骤s1所述,本步骤中,将xml格式的文件导入测试用例生成模块,基于用户的导入信息生成测试用例;
s3:将生成的测试用例转换成自动化测试指令;
s4:读取配置信息并将自动化测试指令和读取的配置信息发送给测试终端执行测试;在/usr/local/inspur/iauto/目录执行main_flow.sh–t即执行测试;
s5:输出测试日志。
实施例二
本发明提供一种linux环境下自动测试的方法,包括如下步骤:
s1:启动excel程序并在excel表格中进行测试程序信息的设置;
需要说明的是,本步骤中,设置测试项目、测试命令以及是否测试;具体包括:
module-测试模块名称
code-测试模块id
item-测试项名称
command-测试命令
selected-测试项是否执行,y为执行该测试项,n为不执行该测试项。
warning-在测试fail时输出的信息
delay-在执行测试命令之后要等待多少秒;
将excel表格文件存储为csv的文件格式;将csv格式的文件拷贝到linux系统的第一设定目录,转换模块将csv格式的文件转为xml格式的文件;需要说明的是,本步骤中的第一设定目录为/usr/local/inspur/basescripts目录;转换模块csv2xml.sh将csv格式的文件转为xml格式的文件;
s2:将excel表格导入测试用例生成模块并基于用户的导入信息生成测试用例;
基于步骤s1所述,本步骤中,将xml格式的文件导入测试用例生成模块,基于用户的导入信息生成测试用例;
s3:将生成的测试用例转换成自动化测试指令;
s4:读取配置信息并将自动化测试指令和读取的配置信息发送给测试终端执行测试;在/usr/local/inspur/iauto/目录执行main_flow.sh–t即执行测试;
s5:输出测试日志;
为了提高获取错误分析结论的效率,降低人力和时间成本,避免采用人工对测试日志进行错误分析确定其错误分析结论而导致准确率较低;本发明的测试方法还包括步骤s6;
s6:对输出的测试日志进行分析处理;提高了自动化测试的整体效率;
需要说明的是,本步骤具体包括:
s61:获取执行失败的测试用例对应的测试日志;
s62:分析测试日志提取测试日志中的查询关键词,通过提取的查询关键词在预存的测试日志分析表中查找与查询关键词匹配的关键词;
需要说明的是,在执行本步骤之前,从每个执行失败的测试用例的测试日志中提取关键词,确定关键词与错误分析结论的对应关系;
根据关键词与对应的错误分析结论的对应关系生成测试日志分析表并进行存储。
s63:输出匹配成功的关键词对应的错误分析结论;
s64:根据输出的错误分析结论生成测试报告。
实施例三
本发明还提供一种linux环境下自动测试的系统,包括测试用例生成模块、测试指令转换模块、测试执行模块和日志输出模块;
测试用例生成模块,用于基于用户的导入信息生成测试用例;
测试指令转换模块,用于将生成的测试用例转换成自动化测试指令;
测试执行模块,用于接收自动化测试指令执行测试;
日志输出模块,用于输出测试日志。
该系统还包括excel程序启动模块、测试程序信息设置模块、转换模块和导入模块;
excel程序启动模块,用于启动excel程序;
测试程序信息设置模块,用于在excel表格中进行测试程序信息的设置;其中,包括设置测试项目、测试命令以及是否测试;
测试程序信息设置模块,还用于将excel表格文件存储为csv的文件格式;
转换模块,用于将csv格式的文件拷贝到linux系统的第一设定目录,并将csv格式的文件转为xml格式的文件;
导入模块,用于将xml格式的文件导入测试用例生成模块。
实施例四
本发明还提供一种linux环境下自动测试的系统,包括测试用例生成模块、测试指令转换模块、测试执行模块和日志输出模块;
测试用例生成模块,用于基于用户的导入信息生成测试用例;
测试指令转换模块,用于将生成的测试用例转换成自动化测试指令
测试执行模块,用于接收自动化测试指令执行测试;
日志输出模块,用于输出测试日志。
该系统还包括excel程序启动模块、测试程序信息设置模块、转换模块和导入模块;
excel程序启动模块,用于启动excel程序;
测试程序信息设置模块,用于在excel表格中进行测试程序信息的设置;其中,包括设置测试项目、测试命令以及是否测试;
测试程序信息设置模块,还用于将excel表格文件存储为csv的文件格式;
转换模块,用于将csv格式的文件拷贝到linux系统的第一设定目录,并将csv格式的文件转为xml格式的文件;
导入模块,用于将xml格式的文件导入测试用例生成模块。
为了提高获取错误分析结论的效率,降低人力和时间成本,避免采用人工对测试日志进行错误分析确定其错误分析结论而导致准确率较低;该系统还包括测试日志获取模块、测试日志分析查询模块、错误分析结论输出模块和测试报告生成模块;
测试日志获取模块,用于获取执行失败的测试用例对应的测试日志;
测试日志分析查询模块,用于分析测试日志提取测试日志中的查询关键词,通过提取的查询关键词在预存的测试日志分析表中查找与查询关键词匹配的关键词;
错误分析结论输出模块,用于输出匹配成功的关键词对应的错误分析结论;
测试报告生成模块,用于根据输出的错误分析结论生成测试报告。
测试日志分析查询模块包括关键词提取单元、测试日志分析表生成单元:
关键词提取单元,用于从每个执行失败的测试用例的测试日志中提取关键词,确定关键词与错误分析结论的对应关系;
测试日志分析表生成单元,用于根据关键词与对应的错误分析结论的对应关系生成测试日志分析表并进行存储。
尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。