一种测试用例文档的转换系统和方法
技术领域
本发明涉及一种文档的转换技术,特别是涉及一种测试用例文档的转换系统和方法。
背景技术
测试用例是指对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略。内容包括测试目标、测试环境、输入数据、测试步骤、预期结果和测试脚本等等,并形成文档。而文档格式标准是实现信息资源功效和开放文档格式的基础。虽然文档格式逐步走向开放,但是目前办公文档业界仍然是多种标准共存。
在进行测试用例文档管理的过程中,常常就面临着不同文档格式的用例管理问题。目前,由于个人使用习惯,所以很多人会选择采用WORD格式的文档进行用例编辑管理,因此存在很多以WORD格式的文档的形式编写的测试用例。WORD格式的文档虽然方便阅读与编辑,但是大部分的测试用例管理平台只支持EXCEL或XML格式,支持WORD格式的文档很少。而且,从测试用例管理及对测试用例文档的二次开发来看,EXCEL格式的表格更具有优势,且适用于多种测试用例管理平台,易于维护,与XML格式的文件相互转换也即为方便,并且很多脚本语言对EXCEL的读写操作更为丰富简单,兼容性也更加好。如果手动对WORD格式的文档进行转换,效率很低。此外,在对WORD格式的文档进行转换修改后,还需要手动编辑EXCEL格式的文档来进行测试用例的同步。
目前,对WORD格式的文档转换为EXCEL格式的表格,一般均采用手动编辑的方式来实现,工作量很大,而且重复劳动,效率很低。并且,如果后期需要进行测试用例更新时,还需手动对EXCEL格式的表格进行同步,维护相当不方便。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种测试用例文档的转换系统和方法,用于解决现有技术中测试用例的WORD格式文档必须手动进行转换和同步的问题。
为实现上述目的及其他相关目的,本发明提供一种测试用例文档的转换系统,包括:输入模块、界面显示模块、用例转换模块、日志模块和输出模块;所述输入模块用于输入测试用例文档;所述界面显示模块包括文档格式选项模块和测试用例列表显示模块;其中,所述测试用例列表显示模块用于显示输入的测试用例文档、用户按照文档格式批量选择待转换测试用例文档;所述文档格式选项模块用于根据待转换测试用例文档选择文档格式;所述用例转换模块用于根据所述文档格式选项模块选择的文档格式,按照批量选择的顺序将待转换测试用例文档转换为EXCEL格式表格;所述日志模块用于保存待转换测试用例文档在所述用例转换模块内的转换过程数据;所述输出模块用于输出所述用例转换模块转换出的EXCEL格式表格。
可选地,所述文档格式包括WORD、WPS和由openoffice软件编辑的文档。
可选地,所述用例转换模块是通过调用win32com接口将待转换测试用例文档转换为EXCEL格式表格。
可选地,所述用例转换模块对一个待转换测试用例文档进行文档格式转换包括:新建2个线程,分别处理待转换测试用例文档和创建新建EXCEL格式表格;读取待转换测试用例文档中的所有表格,按照表格的表头的关键字信息,将相近的不同形式的表头映射为统一表头,并以字典的形式dic_total_key保存统一表头;遍历待转换测试文档中的所有表格:针对每一个表格,根据分隔符将表格的数据分为两个部分:序号和内容,并分别采用字典的形式保存,以dic_key保存序号,以dic_value保存内容;判断dic_key是否存在于dic_total_key中:如果存在,则将dic_total_key写入新建EXCEL格式表格的表头dic_item_key,将dic_value写入新建EXCEL格式表格的内容dic_item_value;如果不存在,则写入NONE标识;当遍历完待转换测试文档时,关闭处理待转换测试用例文档的线程,并关闭待转换测试用例文档;保存转换完成的新建EXCEL格式表格,关闭处理EXCEL格式表格的线程。
可选地,所述用例转换模块在保存新建EXCEL格式表格时,要判断待转换测试用例文档是否是首次转换:如果是,则以待转换测试用例文档的名称予以保存;如果不是,则将待转换测试用例文档的名称和转换时间共同作为新建EXCEL格式表格的名称予以保存。
可选地,所述界面显示模块还包括实时进度信息输出模块,所述实时进度信息输出模块用于显示所述用例转换模块的实时转换进度。
可选地,所述测试用例文档的转换系统采用Python脚本进行编写。
一种测试用例文档的转换方法,包括:通过所述输入模块输入测试用例文档;通过所述测试用例列表显示模块批量选择相同文档格式的待转换测试用例文档;根据选择的待转换测试用例文档的文档格式在所述文档格式选项模块中选择对应的文档格式;所述用例转换模块根据所述文档格式选项模块选择的文档格式按照批量选择的顺序将待转换测试用例文档转换为EXCEL格式表格;所述输出模块输出所述用例转换模块转换出的EXCEL格式表格。
可选地,所述用例转换模块在进行文档格式转换的同时,将文档格式转换过程实时输出到所述界面显示模块。
如上所述,本发明的一种测试用例文档转换系统和方法,具有以下有益效果:
1、简便性:通过界面显示模块可以一键转换,操作简单,界面友好;
2、易用性:批量对测试用例文档进行转换;
3、通用性:对于不同表现形式的测试用例文档的表格,只需修改关键字段属性便可投入使用,易于维护和二次开发。
4、本发明在转换过程中实时显示转换进度,可以收集转换过程的信息,形成日志,方便对转换过程进行管控。
5、可与业界各种用例管理平台相结合,提高效率,应用价值高。
附图说明
图1显示为本发明实施例公开的一种测试用例文档的转换系统的结构示意图。
图2显示为本发明实施例公开的一种测试用例文档的转换系统的用例转换模块的用例转换的流程示意图。
图3显示为本发明实施例公开的一种测试用例的转换方法的流程示意图。
元件标号说明
100 测试用例文档的转换系统
110 输入模块
120 界面显示模块
121 测试用例列表显示模块
122 文档格式选项模块
123 实时进度信息输出模块
130 用例转换模块
140 日志模块
150 输出模块
S21~S24 步骤
S31~S35 步骤
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
请参阅附图。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
实施例1
本实施例公开了一种测试用例文档的转换系统100,采用Python脚本编写,如图1所示,包括输入模块110、界面显示模块120、用例转换模块130、日志模块140和输出模块150,且界面显示模块120包括测试用例列表显示模块121、文档格式选项模块122和实时进度信息输出模块123。
输入模块110用于输入测试用例文档。在本实施例中,测试用例文档包括但不限于WORD文档、WPS文档和通过openoffice软件编辑的文档。而且,通过输入模块110输入的测试用例文档,即可以是一个,也可以是多个。
界面显示模块120为整个测试用例文档的转换提供一个人机交互的界面,方便用户对转换过程进行监控。其中,测试用例列表显示模块121用于显示输入的一个或多个测试用例文档,并且,用户根据测试用例列表显示模块121显示的测试用例列表,可以直观地对需要进行转换的待转换测试用例文档进行单个或批量选择,在本实施例中,是按照待测试用例文档的文档格式进行选择的,不同的文档格式,其具体的转换过程会有不同。文档格式选项模块122则是用于根据待测试用例文档来选择文档格式。实时进度信息输出模块123是用于显示用例转换模块的实时转换进度。
用例转换模块130用于将待转换测试用例文档转换为EXCEL格式表格。当待转换测试用例文档为一个时,用例转换模块130直接对该待转换测试用例文档进行转换;当待转换测试用例文档为多个时,用例转换模块130按照批量选择的顺序将多个待转换测试用例文档转换为EXCEL格式表格。并且,本实施例的用量转换模块130是通过调用win32com接口待转换测试用例文档转换为EXCEL格式表格的,且在处理过程中,对待转换测试用例文档和新建EXCEL格式表格均采用字典方式保存。
在本实施例中,通过一个WORD格式的待转换测试用例文档来说明本实施例的用量转换模块130是如何实现测试用例文档转换的。
WORD格式的待转换测试用例文档以字典dic的形式存储,新建EXCEL格式表格以字典dic_item的形式存储。对于WORD格式的待转换测试用例文档,由于其各种关键字是不统一的,比如有些关键字叫“测试步骤”,还有一些则叫“测试过程”,基于这样的差异,字典dic_total存储的便是统一后的数据,例如,如:dic_buz={u"测试步骤":u"测试步骤",u"测试过程":u"测试步骤"},即都统一为测试步骤,其中,“:”是分隔符,用于划分前后的数据。dic_total保存的就是上述统一后的数据。无论是WORD格式的待转换测试用例文档内的表格,还是新建EXCEL格式表格,如下表一:
表1
其以字典方式存储为:表头中的“项目”表示序号,WORD格式的待转换测试用例文档以dic_key=“项目”进行保存;统一了关键字后的WORD格式的待转换测试用例文档以dic_total_key=“项目”进行保存;新建EXCEL格式表格以dic_item_key=“项目”进行保存。表头中的“功能测试”表示内容,WORD格式的待转换测试用例文档以dic_value=“功能测试”进行保存;统一了关键字后的WORD格式的待转换测试用例文档以dic_total_value=“功能测试”进行保存;新建EXCEL格式表格以dic_item_value=“功能测试”进行保存。
本实施例的用例转换模块130是按照如图2所示的步骤来完成WORD格式的待转换测试用例文档向新建EXCEL格式表格转换的:
步骤S21,调用win32com接口新建2个线程分别用来处理WORD格式的待转换测试用例文档和创建一个新建EXCEL格式表格;
步骤S22,读取WORD格式的待转换测试用例文档的所有表格,按照表格的表头的关键字信息,将相近的不同形式的表头映射为统一表头,并以字典的形式dic_total_key保存;
步骤S23,遍历WORD格式的待转换测试用例文档的所有表格:针对每一个表格,根据分隔符将表格的数据分为两个部分:序号和内容,并分别以字典的形式保存序号为dic_key,保存内容为dic_value保存;判断dic_key是否存在于dic_total_key中:如果存在,则将dic_total_key写入新建EXCEL格式表格的表头dic_item_key,将dic_value写入新建EXCEL格式表格的内容dic_item_value;如果不存在,则写入NONE标识;
步骤S24,当遍历完待转换测试文档时,关闭处理WORD格式的待转换测试用例文档的线程,并关闭WORD格式的待转换测试用例文档;保存转换完成的新建EXCEL格式表格,关闭处理EXCEL格式表格的线程。
此外,在保存新建EXCEL格式表格之前,还需要进行一个判断:如果WORD格式的待转换测试用例文档是首次进行转换,则以WORD格式的待转换测试用例文档的名字作为新建EXCEL格式表格的名字进行保存;如果WORD格式的待转换测试用例文档不是首次转换,则以WORD格式的待转换测试用例文档的名字再加上转换时间作为新建EXCEL格式表格的名字进行保存。
在用例转换模块130进行文档转换的过程中,还会调用root.update方法,将处理过程实时输出到界面显示模块120的实时进度信息输出模块123中,方便定位转换过程中出现的问题。
日志模块140用于保存待转换测试用例文档在用例转换模块130内的详细转换过程数据。界面显示模块120可以根据需要对日志模块140内的日志内容进行调用查看或打印。
输出模块150用于输出用例转换模块130转换出的EXCEL格式表格。
本实施例使用Python脚本实现跨平台操作,可以支持微软及WPS,openoffice等编辑软件;可以批量按顺序处理多个待转换测试用例文档;并且在批量转换的同时可以实时显示转换进度。
实施例2
本实施例公开了一种测试用例文档转换方法,其使用实施例1的测试用例转换系统,具体如图3所示,包括:
步骤S31,通过输入模块输入一个或多个测试用例文档;
步骤S32,通过测试用例列表显示模块选择一个或多个相同文档格式的待转换测试用例文档;
步骤S33,根据选择的待转换测试用例文档的文档格式在文档格式选项模块中选择对应的文档格式;
步骤S34,用例转换模块根据文档格式选项模块选择的文档格式将待转换测试用例文档转换为EXCEL格式表格:当待转换测试用例文档为一个时,用例转换模块直接对该待转换测试用例文档进行转换;当待转换测试用例文档为多个时,用例转换模块130按照批量选择的顺序将多个待转换测试用例文档转换为EXCEL格式表格;并且,用例转换模块在转换过程中,将整个转换过程实时输出至界面显示模块中,详细的转换过程数据保存至日志模块中;
步骤S35,输出模块输出用例转换模块转换出的一个或多个EXCEL格式表格。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包含相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
不难发现,本实施例为与第一实施例相对应的方法实施例,本实施例可与第一实施例互相配合实施。第一实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第一实施例中。
综上所述,本发明的一种测试用例文档转换系统和方法,可以实现不同表现形式的测试用例文档的批量转换,并且,其通过界面显示模块可以一键转换,操作简单;并且,本发明在转换过程中能够实时显示转换进度,方便对转换过程实现管控。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。