大數(shù)據(jù)測試用例分析
基于大數(shù)據(jù)分析,對業(yè)務系統(tǒng)產生的日志進行智能分析,能夠識別日志中的接口、參數(shù)、業(yè)務流,并依據(jù)分析的結果生成測試用例。
問題與背景
業(yè)務復雜
業(yè)務系統(tǒng)的復雜性,對測試人員的業(yè)務能力提出嚴格要求,加重測試成本。
覆蓋面低
系統(tǒng)功能的繁多與變化,導致難以全面覆蓋。比如,某個版本某個接口參數(shù)新增了一個枚舉值,測試人員并不知道
用例低效
測試用例的沒計,高度依賴測試人員的能力,并且與真實用戶的操作脫離。
需求與目標
一、數(shù)據(jù)源
某個系統(tǒng)的海量交易日志,主要是請求與響應日志報文
二、方法
通過對生產環(huán)境交易日志運用大數(shù)據(jù)分析,對主要業(yè)務進行識別
三、目標
根據(jù)日志而不是需求,來生成高覆蓋率的測試案例
生成面向交易的案例
生成面向流程的案例
日志回放
大數(shù)據(jù)功能測試解決方案
一、參數(shù)分析:類型智能識別
對日志報文的參數(shù)的 【參數(shù)類型】進行自動識別,根據(jù)每個參數(shù)的值決定字段是:枚舉型、數(shù)值型、字符串型。
二、單接口測試用例
根據(jù)測試用例等價類原則,產生單接口測試用例并支持導出操作。
三、流程化測試用例
以客戶號、手機號、資金賬戶等標識用戶角色為主線,以時間戳先后順序進行對日志分析處理,生成流程化測試用例。
四、日志回放
使用生產日志進行回放。按用戶標識進行歸類,再排序后進行回放。
TBCD 系統(tǒng)的結構
本項目主要基于TBCD系統(tǒng)實現(xiàn)
TBCD系統(tǒng):是“日志用例轉換軟件”的簡稱。本軟件產品是我公司基于大數(shù)據(jù)分析,對業(yè)務系統(tǒng)產生的日志進行智能分析,能夠識別日志中的接口、參數(shù)、業(yè)務流,并依據(jù)分析的結果生成測試用例。
測試案例生成流程
一、日志清洗
根據(jù)客戶標識和業(yè)務規(guī)則關聯(lián)請求報文與應答報文
日志清洗也是其它功能操作的前提
二、單接口
測試用例
單接口測試用例只分析日志調用的接口及數(shù)據(jù),不進行業(yè)務場景和流程的分析。
單接口測試用例階段會進行數(shù)據(jù)類型分析和輸入值的等價類分析,讓測試者掌握測試的覆蓋情況。
三、流程化
測試用例
結合多種算法:循環(huán)分析、頻度分析、數(shù)據(jù)流分析在龐大的日志數(shù)據(jù)中查找業(yè)務場景,生成流程類測試用例。
四、日志回放
重現(xiàn)用戶的操作。
一、日志清洗
操作步驟:
使用方提供的日志
把存放目錄日志的目錄配置到BTCD中
輸入標題,選擇好日志類型,提交清洗
二、單接口測試用例中的等價類分析
下圖是根據(jù)測試等價類原則產生的有效組合圖表展示。
圖標中的柱狀圖代表一個有效組合,Y軸取值代表組合出現(xiàn)的頻度。
三、單接口測試用例的展示
下圖是描述一個單接口測試用例的圖形。
藍色:入?yún)ⅲ?紅色:出參, 從內到外依次為:數(shù)據(jù)字段,類型,枚舉值。
四、單接口測試用例的導出
可以將單接口導出為Excel格式執(zhí)行。
左邊是分析出的接口用例文件,右邊是一個打開的接口文件。
五、流程化測試用例
分析出的流程化測試用例顯示為列表。
支持流程測試用例的導出。(原子流是一個用戶操作,普通流是不同用戶的同一個操作;)
六、流程測試用例知識圖譜
流程用例按功能號的使用路徑,以圖譜方式展現(xiàn)
圖譜展現(xiàn)內容包括頻次、功能號及順序
圖譜形式清晰易懂
產品價值
一、快速構建接口自動化的測試體系
二、重現(xiàn)生產問題,實現(xiàn)快速排查
三、完全實現(xiàn)模擬用戶操作行為的自動化測試
四、無需腳本,無需設計用例,縮短測試周期
五、生產真實數(shù)據(jù)下的測試,完全模擬生產業(yè)務流程
六、測試過程,測試數(shù)據(jù),測試結果集中管理