小編在測試日常工作中遇到一個(gè)費(fèi)時(shí)的問題,如何將excel中的測試用例,生成測試框架圖?經(jīng)過查閱發(fā)現(xiàn)的python xmind庫
將excel中的測試用例,生成測試框架圖,分為2步
1.解析excel,取出excel中數(shù)據(jù)(此部分暫時(shí)忽略)
2.將前一步準(zhǔn)備的數(shù)據(jù)寫入 xmind(今天主要寫此部分)
一、前提條件:
python xmind庫安裝(參考:https://link.zhihu.com/?target=https%3A//github.com/xmindltd/xmind-sdk-python)
二、代碼部分:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding('utf8')
import xmind
from xmind.core import workbook,saver
from xmind.core.topic import TopicElement
def creatXmindFile(data):
module=[]
for item in data:
module.append(item['module'])
module=list(set(module))
w = xmind.load("test3.xmind") # load an existing file or create a new workbook if nothing is found
s2=w.createSheet() # create a new sheet
s2.setTitle("框架")
r2=s2.getRootTopic()
r2.setTitle("框架")
for i in range(len(module)):
t=TopicElement()
t.setTitle(module[i])
r2.addSubTopic(t)
w.addSheet(s2) # the second sheet is now added to the workbook
r2_topics=r2.getSubTopics() # to loop on the subTopics
for topic in r2_topics:
topic_name=topic.getTitle()
print topic_name
for item in data:
if topic_name == item['module']:
index=topic.getIndex()
t=TopicElement()
content=item['caseId']+" "+'\n'+item['summary']
t.setTitle(content)
r2_topics[index].addSubTopic(t)
summary=t.getTitle()
for item in data:
if item['summary'] in summary:
t1=TopicElement()
content1=item['name']
t1.setTitle(content1)
t.addSubTopic(t1)
xmind.save(w,"test3.xmind") # and we save
if __name__=='__main__':
data=[{
'name': 'testClickTheMenuButton',
'caseId': '01',
'module': '書架',
'summary': '多次開啟關(guān)閉書架',
}
, {
'name': 'testSearchWordWithoutResult',
'caseId': '02',
'module': '搜索',
'summary': '搜索無結(jié)果'
}]
creatXmindFile(data)
三、生成的xmind
11_gaitubao_com_922x437.png