R语言 Testlink excel 转XML 批量导入测试用例

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了R语言 Testlink excel 转XML 批量导入测试用例相关的知识,希望对你有一定的参考价值。

参考技术A Testlink作为一个开源的项目管理工具,功能是非常强大的。不得不说,在测试用例创建方面功能有些弱。
大家都习惯了在excel中写测试用例,当要导入到Testlink中时需要一个一个的创建。
这耗费了大量的时间,在网络不好的情况下还容易出现了延迟,降低了效率。
幸好Testlink提供了XML批量导入测试用例方式,但只支持XML格式,所以这就需要我们把excel转换成XML格式的文件。

由于时间原因,只用到了用例编号 测试用例名字 前提条件 测试步骤 其他均用统一给定值,然后写死在XML中

由于XML生成时的编码问题,元素值中出现<会被替换成(<) >替换成(>) '被替换成(')
在Notepad++里查找替换下就行

如果导入时出现警告:xml_load_ko
可能是R语言默认的编码问题,和本地主机编码不匹配。
解决方法是:在本地创建一个文本,把XML文件内容复制进去,再把后缀名改成xml即可

python xml转excel

因公司业务需要,临时写的一段代码:

 

from xml.etree import ElementTree
import xlrd
import xlwt

# 读取xml
def read_xml(path):
 print("read_xml start...")
 root = ElementTree.fromstring(path)
 
 # 读取row子节点
 rows = root.findall(ROW)
 return rows

def open_excel(path):
 try:
  data = xlrd.open_workbook(path)
  return data
 except Exception as ex:
  return ex

def write_excel(path):
 workbook = xlwt.Workbook()  
  
def read_excel(path,secondtype,by_index=0):
 data = open_excel(path)
 table = data.sheets()[by_index]
 print(table.nrows)
 
 # xml文件
 workbook = xlwt.Workbook()
 # 添加xml工作表
 worksheet = workbook.add_sheet(警情类型)
 
 #print(table.row_values(1)[1])
 for i in range(table.nrows):
  word = table.row_values(i)[2]
  if(word in secondtype):
   # 写入excel
   worksheet.write(i,1,word)
   print("word:",word)
workbook.save("temp.xls");
xml_path="test.xml"
excel_path = "ICCTranslate.xlsx"

# 指定编码uft-8,否则会报错
rows = read_xml(open(xml_path,encoding=utf-8).read())
secondtype = [] 
for item in rows:
 if len(item[1].text) < 10:
  secondtype.append(item[2].text)
#print(secondtype)
read_excel(excel_path, secondtype)

 

以上是关于R语言 Testlink excel 转XML 批量导入测试用例的主要内容,如果未能解决你的问题,请参考以下文章

TestLink学习七:TestLink测试用例Excel转换XML工具

excel测试用例导入testlink

Nmap输出过滤-xml转excel

Python实现将Excel编写的用例上传到testlink指定用例集

R语言XML文件

R语言转置