色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

使用Python將xmind腦圖轉成excel用例的實現代碼(一)

瀏覽:12日期:2022-07-08 15:29:28

最近接到一個領導需求,將xmind腦圖直接轉成可以導入的excel用例,并且轉換成gui可執行的exe文件,方便他人使用。

因為對Python比較熟悉,所以就想使用Python3來實現這個功能,先理一下思路,首先要將xmind轉換成Python可用的數據格式,正好找到了一個xmindparser庫可以做這個事情,然后就好辦了,用xlwt庫寫成xls文件,再用Python自帶的gui庫 tkinter來寫 gui界面,最后用pyinstaller來打包。

計劃分兩個py文件來寫,一個文件寫excel ,一個文件寫gui界面,因為需要導入的字段比較多,而且導入的格式有嚴格的要求,所以寫excel的邏輯還是有點復雜的,所以我們確定xmind的文件有相應的格式來寫,測試編號 測試需求 測試用例標題 測試用例執行步驟 測試用例預期結果 測試用例預置條件都要按照相應的格式來。格式如圖

使用Python將xmind腦圖轉成excel用例的實現代碼(一)

通過xmindparser解析出來的格式是這樣的,是Python的字典加列表的格式

使用Python將xmind腦圖轉成excel用例的實現代碼(一)

from xmindparser import xmind_to_dictimport reimport xlwtclass xmind_to_xls(): def xmind_num(self,value): '''獲取xmind標題個數''' try: return len(value[’topics’]) except KeyError: return 0 def xmind_title(self,value): '''獲取xmind標題內容''' return value[’title’] def xmind_cat(self,filename): ’’’調試函數,打印內容用的’’’ self.out = xmind_to_dict(filename) self.story = self.out[0][’topic’][’topics’] self.num=len(self.story) print(self.out) print(self.out[0][’topic’][’title’]) return self.story,self.num def write_excel(self,xmind_file,servicename=’’,editionname=’’,performer=’’): ’’’生成excel文件函數’’’ self.f=xlwt.Workbook() self.sheet1 =self.f.add_sheet(’sheet1’,cell_overwrite_ok=True) self.row0 = ['storyid', ’需求名稱’, ’測試用例名稱’, ’執行步驟’, ’預期結果’, ’服務名稱’, ’版本’, ’執行人員’] #生成第一行 for i in range(0,len(self.row0)): self.sheet1.write(0,i,self.row0[i]) self.out = xmind_to_dict(xmind_file) self.xls_name=self.out[0][’topic’][’title’] self.story = self.out[0][’topic’][’topics’] self.storynum = len(self.story) j=1 #用例計算器 z = 0 # 用例結果數計數器 for i in range(0, self.storynum): self.storyname = self.story[i][’title’] print(self.storyname) self.regex_str = '.*[[【](.+?)[]】].*' self.storyid_reg = re.match(self.regex_str, self.storyname) if self.storyid_reg: self.storyid=self.storyid_reg.group(1)#正則取出用例編號 #print(self.storyid_reg.group(1)) self.testcase_num=self.xmind_num(self.story[i][’topics’][0]) for k in range(0,self.testcase_num): self.testcase=self.story[i][’topics’][0][’topics’][k] self.testcase_name =self.xmind_title(self.testcase) self.testcase_stepnum=self.xmind_num(self.testcase) #每個用例的步驟數量 self.sheet1.write(k + i + z + j, 2, self.testcase_name) self.sheet1.write(k + i + z + j, 0, self.storyid) self.sheet1.write(k + i + z + j, 1, self.storyname) self.sheet1.write(k + i + z + j, 5, servicename) self.sheet1.write(k + i + z + j, 6, editionname) self.sheet1.write(k + i + z + j, 7, performer) for x in range(0,self.testcase_stepnum): self.testcase_step=self.testcase[’topics’][x] self.teststep_title=self.xmind_title(self.testcase_step) #用例步驟名稱 self.teststep_num=self.xmind_num(self.testcase_step) #用例步驟個數 if self.teststep_num != 0: for y in range(0,self.teststep_num): self.test_results=self.testcase_step[’topics’][y] self.test_result=self.xmind_title(self.test_results)#用例結果 self.sheet1.write(k + i + z + j+y+1, 3, self.teststep_title) self.sheet1.write(k + i + z + j + y+1, 4, self.test_result) z = z + y+1 else: self.test_result=’ ’ self.sheet1.write(k + i + z + j+1 , 3, self.teststep_title) self.sheet1.write(k + i + z + j+1 , 4, self.test_result) z = z + 1 j=j+k self.f.save(self.xls_name+’.xls’) #xls名稱取xmind主題名稱if __name__ == ’__main__’: xmind_file = 'C:UsersAdministratorDesktop版本測試.xmind' # xmind文件 servicename=’aa’ editionname=’bb’ performer=’cc’ #xmind_to_xls().write_excel(xmind_file,servicename,editionname,performer) xmind_to_xls().xmind_cat(xmind_file)

到此這篇關于使用Python將xmind腦圖轉成excel用例的實現代碼(一)的文章就介紹到這了,更多相關Python xmind轉excel用例內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: python
相關文章:
主站蜘蛛池模板: 国产成人精品无缓存在线播放 | 美日韩一区二区 | 97天天干 | 欧美亚洲国产一区 | 亚洲天堂国产 | 99视频网| 欧美成人全部视频 | 国产精品久久久久一区二区三区 | 福利社在线 | 亚洲日本va午夜中文字幕一区 | 精品一区二区三区亚洲 | 成人毛片18女人毛片免费 | 91人碰 | 日本黄色大片免费观看 | 曰本美女高清在线观看免费 | 成人国产一区二区 | 久色视频| 91成人爽a毛片一区二区 | 欧美中文字幕 | 国产成人精品亚洲 | 国产一区二区在线观看视频 | 国产一进一出视频网站 | 国产精品久久久久久久人热 | 久草欧美视频 | 欧美成年黄网站色高清视频 | 久久99国产乱子伦精品免 | 世界一级毛片 | 欧美在线区 | 在线观看国产一级强片 | 黄色影院在线 | 久久久久国产一级毛片高清板 | 午夜精品久久久久久99热7777 | 欧美日一级 | 在线精品国产一区二区 | 亚洲午夜综合网 | 国产亚洲精品一品区99热 | 在线免费精品视频 | 手机看片神马午夜片 | 亚洲欧美日韩国产精品一区 | 韩国一级特黄清高免费大片 | 欧美另类亚洲一区二区 |