CN109857662B - 用例数据处理方法、装置、计算机设备和存储介质 - Google Patents
用例数据处理方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN109857662B CN109857662B CN201910075094.1A CN201910075094A CN109857662B CN 109857662 B CN109857662 B CN 109857662B CN 201910075094 A CN201910075094 A CN 201910075094A CN 109857662 B CN109857662 B CN 109857662B
- Authority
- CN
- China
- Prior art keywords
- case data
- use case
- testlink
- file
- excel file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种用例数据处理方法、装置、计算机设备和存储介质。所述方法包括:获取第一Excel文件,并读取第一Excel文件中的用例数据;创建空白xml文件;将用例数据与对应的Testlink标签进行组合,并写入空白xml文件中,得到包含用例数据和Testlink标签的目标xml文件;将目标xml文件导入Testlink***中。采用本申请的方案能够在无网络的环境下编辑用例,提高用例编辑效率。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种用例数据处理方法、装置、计算机设备和存储介质。
背景技术
Testlink***是基于web的测试用例管理***。Testlink***本身只支持xml格式的导入导出功能,这种格式的用例展示不直观且难以编辑,导致用例只能在Testlink***上进行编辑。每当在线编辑完一条用例,Testlink***会刷新一次页面,从而影响了用例编辑的效率。
发明内容
基于此,有必要针对每当在线编辑完一条用例,Testlink刷新一次页面,影响了用例编辑效率的技术问题,提供一种用例数据处理方法、装置、计算机设备和计算机存储介质,能在无网络的环境下编辑用例,提高用例编辑效率。
一种用例数据处理方法,所述方法包括:获取第一Excel文件,并读取第一Excel文件中的用例数据;创建空白xml文件;将用例数据与对应的Testlink标签进行组合,并写入空白xml文件中,得到包含用例数据和Testlink标签的目标xml文件;将目标xml文件导入Testlink***中。
在其中一个实施例中,用例数据处理方法还包括:获取从Testlink***导出的目标xml文件;解析并遍历目标xml文件,得到用例数据;获取第二Excel文件,将用例数据写入第二Excel文件中,得到第三Excel文件。
在其中一个实施例中,读取第一Excel文件中的用例数据,包括:解析第一Excel文件,得到第一Excel文件中含用例数据的行范围和列范围;遍历第一Excel文件中的用例数据;当第一Excel文件的行范围和列范围中未含有空白单元格,且根据行范围和列范围遍历完用例数据时,执行创建空白xml文件的步骤。
在其中一个实施例中,读取第一Excel文件中的用例数据,还包括:当遍历到任意一行中的第一单元格的用例数据为空,且行的第二单元格中含有用例数据时,确定第一单元格属于与第一单元格对应的上一行单元格合并后的合并单元格的一部分;读取合并单元格中的用例数据;
将用例数据与对应的Testlink标签进行组合,包括:将合并单元格中的用例数据添加至对应的Testlink标签;将行的第二单元格中的用例数据添加至对应的Testlink标签中。
在其中一个实施例中,将用例数据与Testlink标签进行组合并写入第一xml文件中,得到包含用例数据的目标xml文件,包括:根据预设字符分割第一Excel文件的单元格中的用例数据,并形成树形结构,得到具有父子关系的用例数据;将Testlink标签与具有父子关系的用例数据进行组合,保存在数组中,并写入空白xml文件中,得到包含用例数据的目标xml文件。
在其中一个实施例中,用例数据以数组形式存储;将用例数据写入第二Excel文件中,得到第三Excel文件,包括:根据数组对应的索引将用例数据依次写入第二Excel文件中;当检测到在第二Excel文件的同一用例下的相邻单元格中的用例数据相同时,合并相邻单元格,得到第三Excel文件。
在其中一个实施例中,第一Excel文件和第三Excel文件中内容的格式相同。
一种用例数据处理装置,所述装置包括:获取模块,用于获取第一Excel文件;读取模块,用于读取第一Excel文件中的用例数据;创建模块,用于创建空白xml文件;写入模块,用于将用例数据与Testlink标签进行组合并写入空白xml文件中,得到包含用例数据和Testlink标签的目标xml文件;导入模块,用于将目标xml文件导入Testlink***中。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:获取第一Excel文件,并读取第一Excel文件中的用例数据;创建空白xml文件;将用例数据与对应的Testlink标签进行组合,并写入空白xml文件中,得到包含用例数据和Testlink标签的目标xml文件;将目标xml文件导入Testlink***中。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:获取第一Excel文件,并读取第一Excel文件中的用例数据;创建空白xml文件;将用例数据与对应的Testlink标签进行组合,并写入空白xml文件中,得到包含用例数据和Testlink标签的目标xml文件;将目标xml文件导入Testlink***中。
上述用例数据处理方法、装置、计算机设备和存储介质,通过获取第一Excel文件并读取第一Excel文件中的用例数据,可获取在无网络情况下已编辑好的用例数据;创建空白xml文件,将用例数据与对应的Testlink标签进行组合,能得到符合Testlink***编写格式的用例数据;并写入空白xml文件中,得到目标xml文件,能得到符合Testlink***的xml格式的目标xml文件;并将目标xml文件导入Testlink***中,Testlink***能根据第一Excel文件中的用例数据仅需刷新一次页面,提高用例编辑效率。
附图说明
图1为一个实施例中用例数据处理方法的应用环境图;
图2为一个实施例中用例数据处理方法的流程示意图;
图3为另一个实施例中用例数据处理方法的流程示意图;
图4为一个实施例中第一Excel文件内容示意图;
图5(a)为一个实施例中在Testlink***中显示的与第一Excel文件内容对应的界面图;
图5(b)为一个实施例中OA-100:测试用例名称1对应的用例数据展示界面图;
图6为一个实施例中用例数据导出前在Testlink***中展示的界面图;
图7为一个实施例中第三Excel文件内容示意图;
图8(a)为一个实施例中导入第一Excel文件或导出第三Excel文件的界面图;
图8(b)为另一个实施例中导入第一Excel文件的界面图;
图9为一个实施例中导出目标xml文件的界面图;
图10为一个实施例中用例数据处理装置的结构框图;
图11为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例中提供的用例数据处理方法,可以应用于如图1所示的应用环境中。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。
在一个实施例中,如图2所示,提供了一种用例数据处理方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
步骤202,获取第一Excel文件,并读取第一Excel文件中的用例数据。
其中,Excel文件的格式不限,可以为.xls、.et或.xlsx等但不限于此。第一Excel文件的来源不限,例如可以是从终端的数据库中获取的,还可以是终端通过接收上传指令后获取的。
具体地,终端获取第一Excel文件,该第一Excel文件中含有用例数据。终端读取第一Excel文件中的用例数据。
本实施例中,在第一Excel文件中维护好每条用例的用例数据,以一行为一条用例,维护格式如表1:
表1
其中,每个单元格对应一个索引。
本实施例中,终端可采用PHP-ExcelReader算法读取第一Excel文件中的用例数据。
步骤204,创建空白xml文件。
其中,xml(Extensible Markup Language,可扩展标记语言)是一种用于标记电子文件使其具有结构性的标记语言。xml文件是指利用可扩展标记语言写成的文件,也可以指文件格式后缀为.xml的文件。空白xml文件是指未被写入任何数据的xml文件。
具体地,终端可在获取第一Excel文件之后就创建空白xml文件,或者在读取第一Excel文件中的用例数据之后创建空白xml文件。
步骤206,将用例数据与对应的Testlink标签进行组合,并写入空白xml文件中,得到包含用例数据和Testlink标签的目标xml文件。
其中,Testlink标签是指符合Testlink***编辑规则的标签,可以为预设标签。该Testlink标签与第一Excel文件中的用例数据所对应的索引相对应。
具体地,终端将读取到的用例数据与用例数据对应的Testlink标签进行组合。终端按照xml文件导入Testlink***的xml格式,将组合后的Testlink标签和用例数据写入空白xml文件中,得到包含用例数据和Testlink标签的目标xml文件。
本实施例中,例如终端获取用例数据后可通过fopen函数创建一个空的xml文件,通过fwrite函数可将用例数据写入xml文件里。当终端读取到“模块”的数据为“文件夹/子文件夹”时,自动将<testsuite name=“文件夹”><testsuite name=“子文件夹”>写入空白xml文件中。当终端读取到“测试用例名称”的数据为“测试1”时,就自动将<testcasename=“测试1”>写入空白xml文件中。终端依次将读取到的模块、测试用例编号、测试用例名称、摘要、前置条件、预期结果、优先级按照数据结构写入空白xml文件中,最后生成目标xml文件。
步骤208,将目标xml文件导入Testlink***中。
具体地,终端按照xml文件导入Testlink***的格式将目标xml文件导入Testlink***中。
本实施例中,上述用例数据处理方法可内嵌于Testlink***中,并满足Testlink***的兼容性。
上述用例数据处理方法中,通过获取第一Excel文件并读取第一Excel文件中的用例数据,可获取在无网络情况下已编辑好的用例数据;创建空白xml文件,将用例数据与对应的Testlink标签进行组合,能得到符合Testlink***编写格式的用例数据;并写入空白xml文件中,得到目标xml文件,能得到符合Testlink***的xml格式的目标xml文件;并将目标xml文件导入Testlink***中,Testlink***能根据第一Excel文件中的用例数据仅需刷新一次页面,提高用例编辑效率。
在一个实施例中,在将目标xml文件导入Testlink***中之后,还包括:在Testlink***展示该目标xml文件对应的用例数据。
上述用例数据处理方法中,在Testlink***展示该目标xml文件对应的用例数据,能直观地展示第一Excel文件中的用例数据,并通过网络分享第一Excel文件中的用例数据。
在一个实施例中,如图3所示,该用例数据处理方法,还包括:
步骤302,获取从Testlink***导出的目标xml文件。
具体地,终端调用Testlink***中的导出xml文件的函数,生成标准格式的xml文件。终端获取从Testlink***中导出的包含用例数据和Testlink标签的目标xml文件。
步骤304,解析并遍历目标xml文件,得到用例数据。
具体地,终端可使用PHP类库中的API:SimpleXML函数解析并遍历目标xml文件,读取得到用例数据。
步骤306,获取第二Excel文件,将用例数据写入第二Excel文件中,得到第三Excel文件。
其中,第二Excel文件可以是任意一个Excel文件。例如可以是终端创建的空白Excel文件,也可以是从其他位置获取的空白Excel文件,还可以是包含其他数据的Excel文件。
具体地,终端获取第二Excel文件,将用例数据循环写入第二Excel文件种,得到第三Excel文件。
在一个实施例中,该用例数据处理方法还包括:将第三Excel文件保存到服务器中,并生成第三Excel文件对应的文件链接。具体地,终端将第三Excel文件保存到Testlink***对应的服务器中,并生成文件链接展示在终端,以供下载。
上述用例数据处理方法中,通过获取从Testlink***导出的目标文件,解析并遍历目标xml文件,得到用例数据,并获取第二Excel文件,将用例数据写入第二Excel文件中,得到第三Excel文件,解决xml文件编辑时不直观的问题,同时支持用例数据的导入和导出两种功能,能在用例数据导入和导出时均使用Excel文件进行线下用例数据的编辑和备份,提高用例编辑效率。
在一个实施例中,读取第一Excel文件中的用例数据,包括:解析第一Excel文件,得到第一Excel文件中含用例数据的行范围和列范围;遍历第一Excel文件中的用例数据;当第一Excel文件的行范围和列范围中未含有空白单元格,且根据行范围和列范围遍历完用例数据时,执行创建空白xml文件的步骤。
其中,行范围是指第一Excel文件中含有用例数据的行数等,例如第1~10行包含用例数据。列范围是指第一Excel文件中含有用例数据的列数等,例如第1~10列中包含用例数据。空白单元格是指不含任何数据的单元格。
具体地,终端解析第一Excel文件,得到第一Excel文件中含用例数据的行范围和列范围。例如含用例数据的行范围为1~10行,列范围为1~10列。终端根据行范围和列范围遍历第一Excel文件中的用例数据,即仅在行范围和列范围内遍历第一Excel文件中的用例数据。当第一Excel文件的行范围和列范围中未含有空白单元格,且根据行范围和列范围遍历完用例数据时,创建空白xml文件。当当第一Excel文件的行范围和列范围中含有空白单元格时,第一Excel文件导入失败。
在一个实施例中,创建空白xml文件可在读取第一Excel文件中的用例数据之前进行。
上述用例数据处理方法中,通过解析第一Excel文件,得到第一Excel文件中含用例数据的行范围和列范围,遍历第一Excel文件中的用例数据;当Excel文件的行范围和列范围中未含有空白单元格,且根据行范围和列范围遍历完用例数据,能仅根据行范围和列范围遍历用例数据,而不需要遍历所有第一Excel文件中的单元格,就能读取第一Excel文件中的用例数据,减少占用的内存资源。
在一个实施例中,读取第一Excel文件中的用例数据,还包括:当遍历到任意一行中的第一单元格的用例数据为空,且行的第二单元格中含有用例数据时,确定第一单元格属于与第一单元格对应的上一行单元格合并后的合并单元格的一部分;读取合并单元格中的用例数据;
将用例数据与对应的Testlink标签进行组合,包括:将合并单元格中的用例数据添加至对应的Testlink标签;将行的第二单元格中的用例数据添加至对应的Testlink标签中。
其中,一个单元格,当终端读取该单元格时只有第一行含有数据,合并的其他行的数据为空。例如,第1行第1列、第1行第2列和第1行第3列的单元格为一个合并单元格,该合并单元格中的用例数据为“模块”。则当终端读取第1行第1列中的数据时,读取到的用例数据为“模块”;当终端读取第1行第2列中的数据时,读取到的用例数据为空,即没有数据;当终端读取第1行第3列中的数据时,读取到的用例数据为空,也即没有数据。
具体地,终端逐行遍历第一Excel文件中的单元格中的用例数据。当遍历到任意一行中的第一单元格的用例数据为空,即第一单元格内无数据,且第一单元格所在行的第二单元格中含有用例数据时,终端确定第一单元格属于与第一单元格对应的上一行的单元格合并后的合并单元格的一部分。终端读取该合并单元格即第一单元格中的用例数据。
例如,终端遍历到第2行中的第1列的单元格,该单元格中的用例数据为空,即无数据。终端遍历第2行中的第2列的单元格,当该单元格中含有用例数据时,则确定第2行中的第1列的单元格为与第1行第1列的单元格合并后的合并单元格。当遍历到第2行中的第2列的单元格中也不含有用例数据时,遍历第2行中的第3列的单元格。当第2行中的第3列的单元格中含有用例数据时,终端确定第2行中的第1列的单元格为与第1行第1列的单元格合并后的合并单元格,第2行中的第2列的单元格为与第1行第2列的单元格合并后的合并单元格。
终端将合并单元格中的用例数据添加至该上一行单元格对应的Testlink标签;将行的第二单元格中的用例数据添加至第二单元格对应的上一行单元格对应的Testlink标签中。其中,第一单元格对应的Testlink标签和第二单元格对应的Testlink标签可以为同一优先级的标签,则可根据Testlink标签得到第一单元格中的用例数据和第二单元格中的用例数据之间的对应关系。
上述用例数据处理方法中,当遍历到任意一行中的第一单元格的用例数据为空,且行的第二单元格中含有用例数据时,确定第一单元格属于与第一单元格对应的上一行单元格合并后的合并单元格的一部分,能区分第一Excel文件中的合并单元格,并读取合并单元格中的用例数据;将合并单元格中的用例数据添加至对应的Testlink标签,将行的第二单元格中的用例数据添加至对应的Testlink标签中,能把合并单元格中的用例数据和第二单元格中的用例数据区分开,并导入Testlink***中。
在一个实施例中,将用例数据与Testlink标签进行组合并写入第一xml文件中,得到包含用例数据的目标xml文件,包括:根据预设字符分割第一Excel文件的单元格中的用例数据,并形成树形结构,得到具有父子关系的用例数据;将Testlink标签与具有父子关系的用例数据进行组合,保存在数组中,并写入空白xml文件中,得到包含用例数据的目标xml文件。
其中,预设字符是用于分割用例数据的符号。例如可以是“/”、“\”、“*”、“#”、“¥”、“&”或“?”等但不限于此。
具体地,终端读取终端第一Excel文件中的某一个单元格中的用例数据,根据预设字符分割该单元格中的用例数据,并形成树形结构,得到具有父子关系的用例数据。终端将Testlink标签与具有父子关系的用例数据进行组合,保存在数组中,并写入空白xml文件中,得到包含用例数据的目标xml文件。
本实施例中,例如,终端读取的用例数据为“PC测试第二次迭代/冒烟测试用例/已读未读界面标题栏”,形成树形结构,即“测试用例名称1”在“PC测试第二次迭代”文件下的“冒烟测试用例”文件下的“已读未读界面标题栏”中,得到具有父子关系的用例数据。终端再将Testlink标签与具有父子关系的用例数据进行组合,保存在数组[PC测试第二次迭代,冒烟测试用例,已读未读界面标题栏]中。终端将数组写入空白xml文件中,得到包含用例数据的目标xml文件。
上述用例数据处理方法中,根据预设字符分割第一Excel文件的单元格中的用例数据,并形成树形结构,得到具有父子关系的用例数据,能减少第一Excel文件中的用例数据所使用的单元格,;将Testlink标签与具有父子关系的用例数据进行组合,保存在数组中,写入空白xml文件,得到包含用例数据的目标xml文件,能采用数组存储的方式还原用例数据,得到目标xml文件,提高用例数据导入效率。
在一个实施例中,如图4所示,为一个实施例中第一Excel文件内容示意图。其中,该用例数据包括模块、测试用例编号、摘要、前置条件、测试步骤、预期结果和优先级等。模块确定用例的位置,测试用例编号、摘要、前置条件、测试步骤、预期结果和优先级等用来描述测试用例。单元格内容为“PC测试第二次迭代/冒烟测试用例/已读未读界面标题栏”、“PC测试第二次迭代/功能测试用例/已读未读界面标题栏”、“PC测试第二次迭代/回归测试用例/已读未读界面标题栏”、“100”、“101”、“102”、“测试用例名称1”、“摘要1”和“前置条件1”等为合并单元格。
如图5(a)所示,为一个实施例中在Testlink***中显示的与第一Excel文件内容对应的界面图。其中,“PC测试第二次迭代”、“冒烟测试用例”和“已读未读界面标题栏”为根据预设字符分割得到的具有父子关系的用例数据。“OA-100”、“OA-101”和“OA-102”为测试用例编号。当获取对“OA-100:测试用例名称1”的触控指令时,展示如图5(b)所示的界面图。图5(b)为一个实施例中OA-100:测试用例名称1对应的用例数据展示界面图。其中,测试用例编号、测试用例名称、摘要、步骤和预期结果可以为优先级相同的用例数据。预期结果与测试步骤相对应。
在一个实施例中,用例数据以数组形式存储;将用例数据写入第二Excel文件中,得到第三Excel文件,包括:根据数组对应的索引将用例数据依次写入第二Excel文件中;当检测到在第二Excel文件的同一用例下的相邻单元格中的用例数据相同时,合并相邻单元格,得到第三Excel文件。
其中,每个数组都有对应的索引。同一用例可以是模块相同的用例,也可以是测试用例编号相同的用例等但不限于此。相邻单元格可以指上下两个相邻的单元格,也可以是左右两个相邻的单元格。
具体地,终端根据数组对应的索引将用例数据按照索引的顺序依次写入第二Excel文件中,则第二Excel文件中可存在相邻的单元格中的用例数据相同的情况。当终端检测到在第二Excel文件的同一用例下的相邻单元格中的用例数据相同时,合并该相邻单元格,得到第三Excel文件。
本实施例中,终端可使用PHP类库中的API:PHPExcel算法将保存的数组导出到第二Excel文件中。
上述用例数据处理方法中,用例数据以数组形式存储,根据数组对应的索引将用例数据依次导入至第二Excel文件中,能提高导入Excel文件的准确性;当检测到在第二Excel文件的同一用例下的相邻单元格中的用例数据相同时,合并相邻单元格,得到第三Excel文件,能使展示的第三Excel文件更加直观,且格式整齐。
在一个实施例中,如图6所示,为一个实施例中用例数据导出前在Testlink***中展示的界面图。其中,当终端获取对测试用例名称的触控指令时,展示如图5(b)的界面图。
在一个实施例中,如图7所示,为一个实施例中第三Excel文件内容示意图。其中,单元格内容为“PC测试第二次迭代/冒烟测试用例/已读未读界面标题栏”、“PC测试第二次迭代/功能测试用例/已读未读界面标题栏”、“PC测试第二次迭代/回归测试用例/已读未读界面标题栏”、“41”、“42”、“43”和“测试用例名称1”、“摘要1”、“前置条件1”、“低”和“中”等为合并单元格。
在其中一个实施例中,第一Excel文件和第三Excel文件中内容的格式相同。
其中,内容的格式是指合并单元格的位置、单元格行高和列宽、字体规格和字体种类中的至少一种。
具体地,例如,图4中的合并单元格的位置和图7中合并单元格的位置相同。
上述用例数据处理方法中,第一Excel文件和第三Excel文件中内容的格式相同,能使Excel文件内容的格式导入时和导出时的格式相同,使文件展示更加直观整齐。
在一个实施例中,如图8(a)和图8(b)所示,图8(a)为一个实施例中导入第一Excel文件或导出第三Excel文件的界面图。图8(b)为另一个实施例中导入第一Excel文件的界面图。终端接收对根目录的触控指令,例如对“前期用例(193)”的触控指令,则展示功能为“导入”的控件。终端接收对“导入”控件的触控指令后,如图8(b)所示,获取对导入文件类型的选择指令,例如文件类型为XLS,并获取第一Excel文件。或者,终端根据获取的第一Excel文件,自动在文件类型中显示第一Excel文件所属的文件类型。其中终端支持的文件大小可以是4000kB(Kilobyte,千字节),也可以是其他数值不限于此。
在一个实施例中,如图9所示,图9为一个实施例中导出目标xml文件的界面图。终端从图8(a)所示的界面图中接收对根目录的触控指令,例如对“前期用例(193)”的触控指令,则展示功能为“导出”的控件。终端接收对“导出”控件的触控指令后,如图9所示,获取对导出文件类型的选择指令,例如文件类型为XLS,也可以获取对测试用例的其他导出选项的选择指令,并获取对“导出”控件的触控指令,导出第三Excel文件。
在一个实施例中,一种用例数据处理方法,包括:
步骤(a1),获取第一Excel文件。
步骤(a2),解析第一Excel文件,得到第一Excel文件中含用例数据的行范围和列范围。
步骤(a3),遍历第一Excel文件中的用例数据。
步骤(a4),根据预设字符分割第一Excel文件的单元格中的用例数据,并形成树形结构,得到具有父子关系的用例数据。
步骤(a5),当遍历到任意一行中的第一单元格的用例数据为空,且行的第二单元格中含有用例数据时,确定第一单元格属于与第一单元格对应的上一行单元格合并后的合并单元格的一部分。
步骤(a6),读取合并单元格中的用例数据。
步骤(a7),当Excel文件的行范围和列范围中未含有空白单元格,且根据行范围和列范围遍历完用例数据时,创建空白xml文件。
步骤(a8),将合并单元格中的用例数据添加至对应的Testlink标签。
步骤(a9),将行的第二单元格中的用例数据添加至对应的Testlink标签中。
步骤(a10),将Testlink标签与具有父子关系的用例数据进行组合,保存在数组中。
步骤(a11),写入空白xml文件中,得到包含用例数据和Testlink标签的目标xml文件。
步骤(a12),将目标xml文件导入Testlink***中。
步骤(a13),获取从Testlink***导出的目标xml文件。
步骤(a14),解析并遍历目标xml文件,得到用例数据,用例数据以数组形式存储。
步骤(a15),获取第二Excel文件。
步骤(a16),根据数组对应的索引将用例数据依次写入第二Excel文件中。
步骤(a17),当检测到在第二Excel文件的同一用例下的相邻单元格中的用例数据相同时,合并相邻单元格,得到第三Excel文件;其中,第一Excel文件和第三Excel文件中内容的格式相同。
上述步骤(a1)至步骤(a17)并不是必然按照编号指示的顺序依次执行,除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。
上述用例数据处理方法中,通过获取第一Excel文件并读取第一Excel文件中的用例数据,可获取在无网络情况下已编辑好的用例数据;创建空白xml文件,将用例数据与对应的Testlink标签进行组合,能得到符合Testlink***编写格式的用例数据;并写入空白xml文件中,得到目标xml文件,能得到符合Testlink***的xml格式的目标xml文件;并将目标xml文件导入Testlink***中,Testlink***能根据第一Excel文件中的用例数据仅需刷新一次页面,提高用例编辑效率;获取从Testlink***导出的目标文件,解析并遍历目标xml文件,得到用例数据,并获取第二Excel文件,将用例数据写入第二Excel文件中,得到第三Excel文件,解决xml文件编辑时不直观的问题,同时支持用例数据的导入和导出两种功能,能在用例数据导入和导出时均使用Excel文件进行线下用例数据的编辑和备份,提高用例编辑效率。
应该理解的是,虽然图2-3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图10所示,提供了一种用例数据处理装置,包括:获取模块1002、创建模块1004、写入模块1006和导入模块1008,其中:
获取模块1002,用于获取第一Excel文件。
读取模块1004,用于读取第一Excel文件中的用例数据。
创建模块1006,用于创建空白xml文件。
写入模块1008,用于将用例数据与对应的Testlink标签进行组合,并写入空白xml文件中,得到包含用例数据和Testlink标签的目标xml文件。
导入模块1010,用于将目标xml文件导入Testlink***中。
上述用例数据处理装置中,通过获取第一Excel文件并读取第一Excel文件中的用例数据,可获取在无网络情况下已编辑好的用例数据;创建空白xml文件,将用例数据与对应的Testlink标签进行组合,能得到符合Testlink***编写格式的用例数据;并写入空白xml文件中,得到目标xml文件,能得到符合Testlink***的xml格式的目标xml文件;并将目标xml文件导入Testlink***中,Testlink***能根据第一Excel文件中的用例数据仅需刷新一次页面,提高用例编辑效率。
在一个实施例中,获取模块1002用于获取从Testlink***导出的目标xml文件;读取模块1004用于解析并遍历目标xml文件,得到用例数据;获取模块1002还用于获取第二Excel文件;写入模块1008用于将用例数据写入第二Excel文件中,得到第三Excel文件。
上述用例数据处理装置中,通过获取从Testlink***导出的目标文件,解析并遍历目标xml文件,得到用例数据,并获取第二Excel文件,将用例数据写入第二Excel文件中,得到第三Excel文件,解决xml文件编辑时不直观的问题,同时支持用例数据的导入和导出两种功能,能在用例数据导入和导出时均使用Excel文件进行线下用例数据的编辑和备份,提高用例编辑效率。
在一个实施例中,读取模块1004用于解析第一Excel文件,得到第一Excel文件中含用例数据的行范围和列范围;遍历第一Excel文件中的用例数据;当第一Excel文件的行范围和列范围中未含有空白单元格,且根据行范围和列范围遍历完用例数据时,创建模块1006用于执行创建空白xml文件的步骤。
上述用例数据处理装置中,通过解析第一Excel文件,得到第一Excel文件中含用例数据的行范围和列范围,遍历第一Excel文件中的用例数据;当Excel文件的行范围和列范围中未含有空白单元格,且根据行范围和列范围遍历完用例数据,能仅根据行范围和列范围遍历用例数据,而不需要遍历所有第一Excel文件中的单元格,就能读取第一Excel文件中的用例数据,减少占用的内存资源。
在一个实施例中,读取模块1004还用于当遍历到任意一行中的第一单元格的用例数据为空,且行的第二单元格中含有用例数据时,确定第一单元格属于与第一单元格对应的上一行单元格合并后的合并单元格的一部分;读取合并单元格中的用例数据;写入模块1008用于将合并单元格中的用例数据添加至对应的Testlink标签;将行的第二单元格中的用例数据添加至对应的Testlink标签中。
上述用例数据处理装置中,当遍历到任意一行中的第一单元格的用例数据为空,且行的第二单元格中含有用例数据时,确定第一单元格属于与第一单元格对应的上一行单元格合并后的合并单元格的一部分,能区分第一Excel文件中的合并单元格,并读取合并单元格中的用例数据;将合并单元格中的用例数据添加至对应的Testlink标签,将行的第二单元格中的用例数据添加至对应的Testlink标签中,能把合并单元格中的用例数据和第二单元格中的用例数据区分开,并导入Testlink***中。
在一个实施例中,写入模块1008用于根据预设字符分割第一Excel文件的单元格中的用例数据,并形成树形结构,得到具有父子关系的用例数据;将Testlink标签与具有父子关系的用例数据进行组合,保存在数组中,并写入空白xml文件中,得到包含用例数据的目标xml文件。
上述用例数据处理装置中,根据预设字符分割第一Excel文件的单元格中的用例数据,并形成树形结构,得到具有父子关系的用例数据,能减少第一Excel文件中的用例数据所使用的单元格,;将Testlink标签与具有父子关系的用例数据进行组合,保存在数组中,写入空白xml文件,得到包含用例数据的目标xml文件,能采用数组存储的方式还原用例数据,得到目标xml文件,提高用例数据导入效率。
在一个实施例中,写入模块1008还用于根据数组对应的索引将用例数据依次写入第二Excel文件中;当检测到在第二Excel文件的同一用例下的相邻单元格中的用例数据相同时,合并相邻单元格,得到第三Excel文件。
上述用例数据处理装置中,用例数据以数组形式存储,根据数组对应的索引将用例数据依次导入至第二Excel文件中,能提高导入Excel文件的准确性;当检测到在第二Excel文件的同一用例下的相邻单元格中的用例数据相同时,合并相邻单元格,得到第三Excel文件,能使展示的第三Excel文件更加直观,且格式整齐。
在一个实施例中,第一Excel文件和第三Excel文件中内容的格式相同。
上述用例数据处理装置中,第一Excel文件和第三Excel文件中内容的格式相同,能使Excel文件内容的格式导入时和导出时的格式相同,使文件展示更加直观整齐。
关于用例数据处理装置的具体限定可以参见上文中对于用例数据处理方法的限定,在此不再赘述。上述用例数据处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述用例数据处理方法的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述用例数据处理方法的步骤。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图11所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种用例数据处理方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (9)
1.一种用例数据处理方法,所述方法包括:
获取第一Excel文件,并读取所述第一Excel文件中的用例数据;
创建空白xml文件;
将所述用例数据与对应的Testlink标签进行组合,并写入所述空白xml文件中,得到包含所述用例数据和所述Testlink标签的目标xml文件;
将所述目标xml文件导入Testlink***中;
其中,将所述用例数据与对应的Testlink标签进行组合,并写入所述空白xml文件中,得到包含所述用例数据和所述Testlink标签的目标xml文件,包括:根据预设字符分割所述第一Excel文件的单元格中的所述用例数据,并形成树形结构,得到具有父子关系的用例数据;将所述Testlink标签与所述具有父子关系的用例数据进行组合,保存在数组中,并写入所述空白xml文件中,得到包含所述用例数据的目标xml文件。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取从所述Testlink***导出的所述目标xml文件;
解析并遍历所述目标xml文件,得到用例数据;
获取第二Excel文件,将所述用例数据写入所述第二Excel文件中,得到第三Excel文件。
3.根据权利要求1所述的方法,其特征在于,所述读取所述第一Excel文件中的用例数据,包括:
解析所述第一Excel文件,得到所述第一Excel文件中含所述用例数据的行范围和列范围;
遍历所述第一Excel文件中的用例数据;
当所述第一Excel文件的所述行范围和所述列范围中未含有空白单元格,且根据所述行范围和所述列范围遍历完所述用例数据时,执行所述创建空白xml文件的步骤。
4.根据权利要求1至3任意一项所述的方法,其特征在于,所述读取所述第一Excel文件中的用例数据,还包括:
当遍历到任意一行中的第一单元格的用例数据为空,且所述行的第二单元格中含有用例数据时,确定所述第一单元格属于与所述第一单元格对应的上一行单元格合并后的合并单元格的一部分;
读取所述合并单元格中的用例数据;
所述将所述用例数据与对应的Testlink标签进行组合,包括:
将所述合并单元格中的用例数据添加至对应的Testlink标签;
将所述行的第二单元格中的用例数据添加至对应的Testlink标签中。
5.根据权利要求2所述的方法,其特征在于,所述用例数据以数组形式存储;所述将所述用例数据导出至所述第二Excel文件中,得到第三Excel文件,包括:
根据所述数组对应的索引将所述用例数据依次写入所述第二Excel文件中;
当检测到在所述第二Excel文件的同一用例下的相邻单元格中的用例数据相同时,合并所述相邻单元格,得到第三Excel文件。
6.根据权利要求2或5所述的方法,其特征在于,所述第一Excel文件和所述第三Excel文件中内容的格式相同。
7.一种用例数据处理装置,其特征在于,所述装置包括:
获取模块,用于获取第一Excel文件;
读取模块,用于读取所述第一Excel文件中的用例数据;
创建模块,用于创建空白xml文件;
写入模块,用于将所述用例数据与对应的Testlink标签进行组合,并写入所述空白xml文件中,得到包含所述用例数据和所述Testlink标签的目标xml文件;其中,将所述用例数据与对应的Testlink标签进行组合,并写入所述空白xml文件中,得到包含所述用例数据和所述Testlink标签的目标xml文件,包括:根据预设字符分割所述第一Excel文件的单元格中的所述用例数据,并形成树形结构,得到具有父子关系的用例数据;将所述Testlink标签与所述具有父子关系的用例数据进行组合,保存在数组中,并写入所述空白xml文件中,得到包含所述用例数据的目标xml文件;
导入模块,用于将所述目标xml文件导入Testlink***中。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910075094.1A CN109857662B (zh) | 2019-01-25 | 2019-01-25 | 用例数据处理方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910075094.1A CN109857662B (zh) | 2019-01-25 | 2019-01-25 | 用例数据处理方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109857662A CN109857662A (zh) | 2019-06-07 |
CN109857662B true CN109857662B (zh) | 2022-09-27 |
Family
ID=66896267
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910075094.1A Active CN109857662B (zh) | 2019-01-25 | 2019-01-25 | 用例数据处理方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109857662B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111191419A (zh) * | 2019-12-26 | 2020-05-22 | 广东飞企互联科技股份有限公司 | 适用testlink的excel转xml方法及*** |
CN113778886B (zh) * | 2021-09-15 | 2023-11-10 | 北京天融信网络安全技术有限公司 | 一种测试用例的处理方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103324731A (zh) * | 2013-06-28 | 2013-09-25 | 中国农业银行股份有限公司 | 将电子表格文件转换为网页格式文件的方法和装置 |
CN104866426B (zh) * | 2015-05-28 | 2017-10-17 | 华北计算技术研究所 | 软件测试综合控制方法及*** |
CN108228551A (zh) * | 2018-01-08 | 2018-06-29 | 平安科技(深圳)有限公司 | excel的数据导入方法、装置、设备及计算机可读存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9262384B2 (en) * | 1999-05-21 | 2016-02-16 | E-Numerate Solutions, Inc. | Markup language system, method, and computer program product |
JP2008234370A (ja) * | 2007-03-21 | 2008-10-02 | Just Syst Corp | 文書処理装置及び文書処理方法 |
CN104156342A (zh) * | 2014-08-01 | 2014-11-19 | 福建星网视易信息***有限公司 | 一种将Excel格式测试用例转为XML格式的方法及装置 |
US10402312B2 (en) * | 2016-09-20 | 2019-09-03 | Bank Of America Corporation | Source code validation tool |
CN107133027A (zh) * | 2017-03-30 | 2017-09-05 | 南京南瑞继保电气有限公司 | 一种语法树层次化表示方法 |
CN107133454A (zh) * | 2017-04-20 | 2017-09-05 | 无锡慧方科技有限公司 | 用于对医疗数据集进行搜索和统计的方法、***和计算机可读存储介质 |
CN109213978B (zh) * | 2017-07-03 | 2022-05-06 | 珠海金山办公软件有限公司 | 一种合并单元格的方法、装置、电子设备及可读存储介质 |
-
2019
- 2019-01-25 CN CN201910075094.1A patent/CN109857662B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103324731A (zh) * | 2013-06-28 | 2013-09-25 | 中国农业银行股份有限公司 | 将电子表格文件转换为网页格式文件的方法和装置 |
CN104866426B (zh) * | 2015-05-28 | 2017-10-17 | 华北计算技术研究所 | 软件测试综合控制方法及*** |
CN108228551A (zh) * | 2018-01-08 | 2018-06-29 | 平安科技(深圳)有限公司 | excel的数据导入方法、装置、设备及计算机可读存储介质 |
Non-Patent Citations (2)
Title |
---|
"Excel导入Testlink的过程总结";籽藤;《https://www.testwo.com/blog/7586》;20150204;1 * |
"JAVA code to Convert Excel fi le To XML fi le";962213 Member;《https://community.oracle.com/tech/developers/discussion/2442864/java-code-to-convert-excel-file-to-xml-file》;20120918;1-7 * |
Also Published As
Publication number | Publication date |
---|---|
CN109857662A (zh) | 2019-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109901834B (zh) | 文档页面生成方法、装置、计算机设备和存储介质 | |
CN108388515A (zh) | 测试数据生成方法、装置、设备以及计算机可读存储介质 | |
CN109857662B (zh) | 用例数据处理方法、装置、计算机设备和存储介质 | |
CN105549936B (zh) | 数据表的显示方法和装置 | |
CN110765152B (zh) | Sql提取方法、装置、计算机设备和存储介质 | |
CN112965645A (zh) | 页面拖拽方法、装置、计算机设备及存储介质 | |
CN111324716A (zh) | 指标数据获取方法、装置、计算机设备和存储介质 | |
CN113283228A (zh) | 文档生成方法、装置、电子设备及存储介质 | |
CN110413931B (zh) | 数据加载方法、装置、计算机设备和存储介质 | |
CN110647350A (zh) | 接口文档生成方法、装置、计算机设备和存储介质 | |
US10140278B2 (en) | Computer-implemented methods and systems for associating files with cells of a collaborative spreadsheet | |
CN113742612A (zh) | 一种数据渲染方法、装置、电子设备及存储介质 | |
CN117078181A (zh) | 一种电力交易业务数据处理流程自动化方法与*** | |
CN115359828A (zh) | 一种服务器固件刷新方法、装置、终端及存储介质 | |
CN113254455B (zh) | 数据库的动态配置方法、装置、计算机设备及存储介质 | |
CN109918114A (zh) | 代码的评论信息获取方法、装置、计算机设备和存储介质 | |
CN113010527A (zh) | 检测数据的处理方法、装置、计算机设备和存储介质 | |
CN111083007B (zh) | 测试方法、装置、计算机设备和存储介质 | |
CN105893512A (zh) | 一种基于元数据的任意版本兼容数据结构存取方法及装置 | |
CN111382382A (zh) | 数据的展示方法、装置、计算机设备和存储介质 | |
CN112835886A (zh) | 数据表字段添加方法和装置 | |
CN112749294B (zh) | 页面隐藏文案识别方法、装置、计算机设备和存储介质 | |
CN112527654A (zh) | 测试用例准备方法、装置、计算机设备和存储介质 | |
CN117056228A (zh) | 页面加载的测试方法、装置、计算机设备和存储介质 | |
CN113676186A (zh) | 一种针对字符串的估算定位方法和*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |