Jmeter/如何對一個智能識別圖片的服務進行測試,隨機抽取圖庫圖片並驗證其識別成功率

 

最近遇到了一個需求,需要對一個識別圖片的服務進行準確度測試,本來打想用python實現進行批量測試的。但由於還需要進行壓測,所以打算一起用Jmeter實現了。在這裏簡單記錄下jmeter實現思路。

 

首先簡單化下測試對象的條件

request需要以form-data攜帶參數與圖片

response返回對圖片識別的目標,有多個時返回多個,目標種類可不同;

未識別出任何目標或無目標時,返回[]

 

測試策略爲,對ABCD四種情況分別建立不同的Thread Group,每個Thread Group實現一個http請求圖像智能識別服務,每個Thread Group建立一個Random Variable以實現隨機抽取圖庫圖片進行驗證(要求線程獨立),通過BeanShell PreProcessor將隨機圖片的序號轉換成文件存儲路徑並存放到四個全局變量中,並在HTTP Request中引用它。並增加BeanShell PreProcessor Assertion對請求結果進行斷言驗證。並記錄對應執行日誌信息。

首先創建測試計劃

並建立四個全局變量(可以不設置默認值)

這裏有一個前置線程組需要進行獲取祕鑰,以及一些加密工作的,不是本次介紹重點,就暫時不涉及了,主要是思路。

設置HTTP Request,將form-data格式的參數分成Parameters與Files Upload兩類,注意勾選Use multipart/form-data

add->config ELement->Random Variable,增加一個隨機變量元件,用來隨機抽查圖庫中的照片

add->Pre Processor->BeanShell PreProcessor,增加一個BeanShell的前置處理元件,將隨機變量randInt轉換成圖片路徑並存儲到全局變量中

add->Assertions->Bean Shell Assertion,增加一個斷言元件,通過腳本對http response解析從而判斷是否正確識別圖庫中的圖片

這裏需要我們預先將圖庫分類好,也就是準備圖片數據,再對圖庫進行隨機抽取

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章