一、工具開發(fā)場景:
由于領(lǐng)導(dǎo)要求每周、每月進(jìn)行測試組總結(jié)攀痊,于是就從需求評審桐腌、用例編寫、提交bug苟径、接口測試數(shù)案站、測試報告總結(jié)等幾個方面進(jìn)行了統(tǒng)計。
用例平時在xmind上編寫的棘街,不好統(tǒng)計用例條數(shù)蟆盐,于是就開發(fā)了此工具。
代碼已提供遭殉,需要的可自取~
二舱禽、講解方案
1、電腦桌面獲取桌面文件恩沽;
# -*- coding: utf-8 -*-
'''
@Time : 2022/10/27 14:34
@Author : Celeste
@File : count_case.py
'''
import winreg
from xmindparser import xmind_to_dict
import os
class Func():
def __init__(self): #累加計數(shù)方法
self.count1 = 0
#獲取桌面文件
def get_desktop(self):
key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, r'Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders')
return winreg.QueryValueEx(key, "Desktop")[0]
2誊稚、桌面找到xmind文件,讀取xmind用例轉(zhuǎn)為json格式罗心;
#讀取xmind文件里伯,轉(zhuǎn)為json格式
def read_xmind(self):
desk_file = str(self.get_desktop())
for files in os.listdir(desk_file):
if files.endswith(".xmind"):
xmind_file = desk_file+'\\'+files
out = xmind_to_dict(xmind_file)
story = out[0]['topic']['topics']
return story
3、統(tǒng)計xmind中用例數(shù)
#遍歷json格式渤闷,計算xmind中最后一條用例數(shù)據(jù)
def count_case(self,story):
#count1 = 0
for i in story:
if "topics" not in i.keys() and "title" in i.keys():
self.count1 += 1
#print(self.count1)
else:
for k,v in i.items():
if "topics" == k:
self.count_case(v)
else:
continue
return self.count1
if __name__ == '__main__':
p = Func()
a = p.read_xmind()
b = p.count_case(a)
print(b)
4疾瓮、如何使用
三、總結(jié)
1飒箭、該工具使用狼电,目前只適用于統(tǒng)計桌面一個xmind文件;
2弦蹂、準(zhǔn)備后續(xù)做成exe桌面GUI工具肩碟,xmind文件放哪里都可以使用
3、工具支持一鍵導(dǎo)入多個xmind文件一起統(tǒng)計