溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python解析LR Analyse Result并生成性能指標(biāo)數(shù)據(jù)的匯總報告

發(fā)布時間:2020-07-31 15:51:58 來源:網(wǎng)絡(luò) 閱讀:1527 作者:平山 欄目:編程語言

前言

在性能測試框架開發(fā)中,需要將場景執(zhí)行完成后的測試報告進(jìn)行處理,匯總報告中關(guān)注的性能指標(biāo)數(shù)據(jù),然后寫入報告并郵件發(fā)送相關(guān)人員。因而,其中一個環(huán)節(jié)就是,如何從測試報告中抓取關(guān)心的各個指標(biāo)數(shù)據(jù)(如,tps,響應(yīng)時間,并發(fā)用戶數(shù)等)?

 

問題分析

LR生成測試報告時會將報告數(shù)據(jù)保存到目錄,目錄里有類似各個指標(biāo)的匯總結(jié)果,如下圖所示。但,如果想通過解析該html獲取各個指標(biāo)數(shù)據(jù),這個想法會讓你失望的!因為分析該html源碼發(fā)現(xiàn),指標(biāo)數(shù)據(jù)其實并不在該頁面,而是在該頁面的定義的frameset。通俗的講,就是一個頁面嵌套另外的頁面,實際數(shù)據(jù)要通過訪問內(nèi)嵌頁面獲得。熟悉selenium的同學(xué),一定清楚這類情況,畢竟想要定位其中的元素,首先要做的操作就是switch_to_frame嘛。此處不多扯,后續(xù)會出selenium相關(guān)的系列文章。

Python解析LR Analyse Result并生成性能指標(biāo)數(shù)據(jù)的匯總報告

解決思路

經(jīng)過對html源碼分析,可以發(fā)現(xiàn)每個指標(biāo)數(shù)據(jù)對應(yīng)存儲在Report目錄下的一個html文件,只要使用pythonhtml解析技術(shù)獲取到,然后對數(shù)據(jù)稍加修改,增加一些標(biāo)簽形式html格式的字符串,最后寫入到.html的文件即可。

 

Python html解析技術(shù)總結(jié)

Python是非常擅長解析html的,方法眾多,歸納以下幾種:

1. lxml.html

2. BeautifulSoup

3. SGMLParser

4. HTMLParaer

5. Requests-HTML

6. 正則表達(dá)式

在本次實現(xiàn)中,采用的是 BeautifulSoup,一款用于HTMLXML文件中提取數(shù)據(jù)的Python庫,API清晰、簡潔。其中,lr報告中的表格樣式和獲取表格數(shù)據(jù)的代碼分別如下:

lr報告的樣式表格

Python解析LR Analyse Result并生成性能指標(biāo)數(shù)據(jù)的匯總報告

部分代碼如下:

Python解析LR Analyse Result并生成性能指標(biāo)數(shù)據(jù)的匯總報告 


實現(xiàn)效果

最后,分析場景執(zhí)行結(jié)果,提取TPS、響應(yīng)時間,并發(fā)用戶數(shù)等指標(biāo)數(shù)據(jù),并生成匯總報告的樣式如下:

Python解析LR Analyse Result并生成性能指標(biāo)數(shù)據(jù)的匯總報告


其他資源:

python入門課程:http://i.youku.com/weiworld521


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI