如何讓自動(dòng)化測(cè)試報(bào)告內(nèi)容更豐富_第1頁(yè)
如何讓自動(dòng)化測(cè)試報(bào)告內(nèi)容更豐富_第2頁(yè)
如何讓自動(dòng)化測(cè)試報(bào)告內(nèi)容更豐富_第3頁(yè)
如何讓自動(dòng)化測(cè)試報(bào)告內(nèi)容更豐富_第4頁(yè)
如何讓自動(dòng)化測(cè)試報(bào)告內(nèi)容更豐富_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余1頁(yè)可下載查看

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、如何讓自動(dòng)化測(cè)試報(bào)告內(nèi)容更豐富 簡(jiǎn)述 使用selenium webdriver + Python做自動(dòng)化測(cè)試,執(zhí)行完成后要生成測(cè)試報(bào)告,Python 我們使用的HTMLtestrunner進(jìn)行生成,但是默認(rèn)提供的生成報(bào)告內(nèi)容,并不能滿足我們的 需求,怎么才能讓測(cè)試報(bào)告數(shù)據(jù)更清晰,內(nèi)容更豐富呢。對(duì)于一些人來(lái)說(shuō),可能已經(jīng)重寫了 報(bào)告生成方式,放棄使用 HTMLtestrunner。但是對(duì)于python小白可能還做不到,只能用現(xiàn) 有東西進(jìn)行展示,那么下面簡(jiǎn)單介紹通過(guò)修改HTMLtestrunner去實(shí)現(xiàn)想要的內(nèi)容。 先通過(guò)兩張圖片對(duì)比一下我們將要實(shí)現(xiàn)的功能: 自動(dòng)化顫麗 Start Tim已:?Dl

2、4-09-1 ? 14;43:28 Duration: 0:00; 2 Pass 4 Shflv;生廿巾叭 Fm 圖 AJ 圖表1 自動(dòng)化測(cè)試報(bào)告 StflrfTimft: 2014(?-78 03 4? 43 Duration: 0:01:0.00000 Status: Pass C Show rlLITIEmrY -Rl Qfl All Test Group/Test cass Count Pass Fail Error View Screenshot cjse id c a sejogin,Login 1 1 0 o IIHH1I teethe 3 se_login_l csejd lo

3、gin 5 5 Q Q兀間 C3se_OC02 toe tjo g in 事網(wǎng)為空的塢證 pass ca5e_OCOS pass * case_C01 庶就n g in/戶名為空拘驗(yàn)證 匚3SG CIC04 testbg詁巖娛時(shí)爸碼越證 pass C5Ee_0003 的卑戶名膛證 Dass Total 6 o 圖表2 如圖所示,圖表1是原始樣式輸出,圖表2是修改后樣式輸出。通過(guò)對(duì)比我們可以看到, 圖表2比圖表1多了首位部的兩列。我在第一行加caseid,用來(lái)記錄用例的編號(hào),最后一列, 添加了每一個(gè)用例執(zhí)行過(guò)程中關(guān)鍵步驟的截圖快照。 這樣做的好處: 1. 有了用例編號(hào)我們可以通過(guò)用例ID進(jìn)行對(duì)用

4、例的定位,尤其是對(duì)失敗用例的定位。 2. 有了用例執(zhí)行過(guò)程中關(guān)鍵位置截圖快照,對(duì)于失敗或者出錯(cuò)異常的用例,在無(wú)人值 守情況下進(jìn)行執(zhí)行用例時(shí),可以進(jìn)行界面追蹤。 實(shí)現(xiàn) 下面來(lái)介紹怎么實(shí)現(xiàn)的,首先先說(shuō)一下我實(shí)現(xiàn)的思路。對(duì)于這個(gè)我們的測(cè)試報(bào)告而言, 我只 想調(diào)整一下他的展示樣式,豐富兩列內(nèi)容。所以先去想怎么去把他的樣式給修改了。 然后再 往修改后的樣式表格里面添加數(shù)據(jù)。 也就是分兩步做: 1改樣式 2加數(shù)據(jù) 改樣式 改樣式,這里只需要會(huì)基礎(chǔ)的HTML 中行、列標(biāo)識(shí)就可以了。 我們要在界面中加兩列,那么很簡(jiǎn)單,就是加兩個(gè)就可以了。 看源碼部分: 從395行左右開(kāi)始就是存儲(chǔ) HTML代碼展示的部分,找到

5、table標(biāo)簽和第一行列頭展示內(nèi)容。 腳本片段1: REPORT_TMPL “”“”代碼段里面包含了 的結(jié)構(gòu)內(nèi)容 如: Test Group/Test case Cou nt Pass Fail Error View Scree nshot %(test_list)s Total %(cou nt)s %(Pass)s %(fail)s %(error)s table標(biāo)簽中的第一個(gè)就是第一行,中的每一個(gè)代表一列。標(biāo)簽中間的文本 是直接顯示在界面的。 Test Group/Test case Count Fail Error View I case l og in r Case Login 斗

6、斗 0 0 Detail Totl 4 4 0 0 Test Group/Test case / 這里添加 colspan=2是合并 2 個(gè)列。因?yàn)?下面的行中的caseid需要占一列,但是標(biāo)題列頭部分顯示是一個(gè)整體,所以做了合并 Cou nt Pass Fail Error View Screenshot/圖片快照的列頭標(biāo)題 腳本片段2 : REPORT_CLASS_TMPL代碼段 是 展示calss的行,可以叫做測(cè)試模塊的類,它是單 獨(dú)放在一行中的,每個(gè)模塊一行。因?yàn)橐厦娴牡谝恍袠?biāo)題中的列數(shù)對(duì)應(yīng),所以修改如下: case_id /添加的caseid的標(biāo)題,這一行不在主列頭,而是放在測(cè)試

7、模塊用 例統(tǒng)計(jì)所在的行里面。 %(desc)s %(cou nt)s %(Pass)s %(fail)s %(error)s Detail /保持列數(shù)統(tǒng)一,加入空白列 腳本片段3 : REPORT_TEST_WITH_OUTPUT_TMPL=”是測(cè)試用例展示部分代碼,這段內(nèi)容是展開(kāi) 測(cè)試模塊后進(jìn)行顯示的 REPORT_TEST_WITH_OUTPUT_TMPL = r” %(caseid)s/%(caseid)s 是 python 轉(zhuǎn)譯 html 代碼中變量替 換方式。caseid會(huì)在python腳本中定義。 %(desc)s %(status)s x %(script)s /這一列內(nèi)容加入圖

8、片快照的鏈接訪問(wèn)路 徑%(image)s中替換鏈接地址 / 鏈接圖標(biāo) 單從HTML界面樣式展示來(lái)看,上面所有代碼段中修改都是在每個(gè)加入兩個(gè)。 這樣我們的樣式就改完了。然后開(kāi)始加入數(shù)據(jù)。 加數(shù)據(jù) 先想一下我們要加什么數(shù)據(jù).從樣式中看我們?cè)黾恿藘蓚€(gè)列,那么有兩列的數(shù)據(jù)是需要增加 的,具體加什么呢?想一下?我們?cè)诟臉邮降臅r(shí)候加的兩個(gè)列中使用到了變量,那么變量取 值是需要實(shí)現(xiàn)的。那么首先定義變量。 定義報(bào)告輸出兩個(gè)變量的取值,放在REPORT_TEST_OUTPUT_TMf定義的下面: 腳本片段4: REPORT_TEST_OUTPUT_TMPL = r” %(id)s: %(output)s mil

9、l REPORT_TEST_OUTPUT_IMAGE = r” %(scree nshot)s mill REPORT_TEST_OUTPUT_CASEID = r” %(case_id)s mill 然后找到_generate_report_test函數(shù),在這個(gè)函數(shù)中定義我們要替換html變量,并實(shí)現(xiàn)變 量的取值。 腳本片段5 : script = self.REPORT_TEST_OUTPUT_TMPL % dict( id = tid, output = saxutils.escape(uo+ue), ) image = self.REPORT_TEST_OUTPUT_IMAGE % d

10、ict( scree nshot = saxutils.escape(uo+ue) ) caseid = self.REPORT_TEST_OUTPUT_CASEID % dict( case_id = saxutils.escape(uo+ue) ) row = tmpl % dict( tid = tid, Class = (n = 0 and hidde nRow or non e), style = n = 2 and errorCase or (n = 1 and failCase or non e), desc = desc, script = script, image = imageimage.fi nd(image):(i nt(image.fi nd(p ng)+3), caseid = caseidcaseid.fi nd(case):(i nt(caseid.fi nd(case)+9), status = self.STATUS n, ) 上面image、caseid字符串截取位置跟我在控制臺(tái)輸出的內(nèi)容有關(guān)系,所以不是通用的, 需要自行修改。字符串截取

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論