利用Python+plotly製做接口請求時間的violin圖表

本人在作接口測試的過程當中,每次請求接口時都會本身計算一個請求時間存在數據庫裏,時間一長積累了不少數據,在學習Python+plotly進行數據可視化後,終於對接口請求時間這個數據進行了處理,製做了violin圖表,效果還不錯。分享一下代碼,供你們參考。java

下面是我本身的測試方法:python

#!/usr/bin/python
# coding=utf-8
 
import plotly.plotly
import pandas as pd
import plotly.figure_factory as ff
import second.mysql
 
if __name__ == "__main__":
    a = second.mysql.Mysql()
    b = a.getApiTimes('/article/list/userfeed', '/article/detail', '/article/info', '/advertise/api/list', '/common/menu')
    df = pd.DataFrame(dict(Score=b[0], Group=b[1]))  # 合併數據
    fig = ff.create_violin(df, data_header='Score', group_header='Group',
        height=700, width=1200,title='接口請求時間')
    plotly.offline.plot(fig)

下面是mysql裏面的getapitimes()方法:mysql

def getApiTimes(self, *params):
        num = str(params.__len__())
        print "接口數:" + num
        conn = self.conn
        # 獲取連接
        cur = conn.cursor()
        data = []
        size = []
        for api in params:
            cur.execute("SELECT * FROM api_result WHERE api_name = \"" + api + "\"")
            dfs = cur.fetchall()
            # 排除異常數據
            for row in dfs:
                if row[7] < 1:
                    data.append(row[7])
                    size.append(api)
        cur.close()
        conn.commit()
        conn.close()
        return [data, size]

下面是幾個接口的效果圖:sql

這下再去看接口請求的響應時間,簡直太直接了。用來作PPT和報告再好不過了。數據庫

技術類文章精選

  1. java一行代碼打印心形
  2. Linux性能監控軟件netdata中文漢化版
  3. 接口測試代碼覆蓋率(jacoco)方案分享
  4. 性能測試框架
  5. 如何在Linux命令行界面愉快進行性能測試
  6. 圖解HTTP腦圖
  7. 如何測試機率型業務接口
  8. httpclient處理多用戶同時在線
  9. 將swagger文檔自動變成測試代碼
  10. 五行代碼構建靜態博客
  11. httpclient如何處理302重定向
  12. 基於java的直線型接口測試框架初探
  13. Tcloud 雲測平臺--集大成者

非技術文章精選

  1. 爲何選擇軟件測試做爲職業道路?
  2. 成爲傑出Java開發人員的10個步驟
  3. 寫給全部人的編程思惟
  4. 自動化測試的障礙
  5. 自動化測試的問題所在
  6. 測試之《代碼不朽》腦圖
  7. 成爲優秀自動化測試工程師的7個步驟
  8. 優秀軟件開發人員的態度
  9. 如何正確執行功能API測試

點擊查看公衆號地圖

相關文章
相關標籤/搜索