工商銀行數據中心接口冒煙測試方法(3)

發表于:2016-11-17來源:工商銀行數據中心作者:李雁南點擊數: 標簽:冒煙測試
實現方案: 實現架構非常簡單,就是一套 開源 的ELK日志采集架構,加上python開發的接口測試框架和結果統計功能,如下圖所示: 主要步驟如下: 1,通過

實現方案:

實現架構非常簡單,就是一套開源的ELK日志采集架構,加上python開發的接口測試框架和結果統計功能,如下圖所示:

1.jpg

主要步驟如下:

1,通過開源ELK實現應用日志的采集與管理。在客戶端部署logstash agent,并配置日志采集策略;日志記錄以key-value的格式上送REDIS內存數據庫,這個設計主要是為了在client和server之間做一個緩沖,保證了日志記錄的0丟失;ELSTICSEARCH提供了日志的全文檢索功能,并提供了API服務用來外部調用

2,利用python的pyes庫調用ELSATICSEARCH的API服務,根據特征字段抓取xml和json格式的接口報文。

3,對采集到的接口報文進行格式化處理,格式化日期、流水號或時間戳等字段,并對格式化后的報文做MD5的校驗。

4,利用python的http和socket接口庫實現接口測試案例,這里可能要根據不同應用做一些客戶化,盡量通過通用的方式實現。

5,對于異常的測試案例進行自動退出。為了保證案例集的可用性,我們這里做了一個簡單的接口退出規則,如果執行超過三次且每次都失敗的接口案例,會被系統自動定義為失效案例。

6,對案例的執行結果進行成功率分析和錯誤歸因分析,最終發現存在的接口問題。這里不再關注每一個測試案例返回的成功和失敗,而是針對每一類接口的成功率、失敗率和錯誤類型進行統計,從數值和數量變化的角度去發現問題。

7,接口定義平臺提供了一個web的接口定義模塊,幫助業務測試人員根據接口文檔編輯接口要素,并拼裝成接口報文進行測試。對于復雜的交易場景(比如流程長或交互次數多),可以在平臺上編排接口的調用順序和前后項邏輯關系,實現一個比較復雜場景的接口測試。雖然這個功能更偏重于自動化測試,但是這個功能幫助我們實現了無法通過應用前段功能測試覆蓋的接口測試,是非常好的補充。

通過上述方法,我們在一周的時間里,在3個應用進行了試驗,發現了30多個接口,接近2萬筆報文案例,案例的有效性可以達到了97%。通過每日對這些案例進行自動化測試,發現了一些接口功能和應用環境配置的問題。

原文轉自:http://blog.tingyun.com/web/article/detail/1340

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97