一大早來公司老板給小T安排做一個系統的業務場景穩定性測驗,我一臉蒙呀,老板解釋到:就是讓我一頓亂整,看看系統會不會掛掉,天下還有這等好事兒?哈哈,我和老板說,我有辦法了,搞死系統可別怪我呀,老板發話了:測驗環境搞死也沒事,主要是要測驗出系統的健壯性!
話是說出了口,但實際真的很容易嗎?急得小T是左右為男(難)又滿頭大漢(汗),沒辦法找到了Chatgpt一頓操作猛如虎,哈哈,Chatgpt 提供了一個介面混沌測驗,大概思路是以撞庫的形式來進行測驗介面,原理如下:

配置好混沌規則 ,然后以 “撞庫” 的形式排列組合,替換掉正向介面用例中的引數值去執行撞庫,瞬間完成介面健壯性測驗 “撞庫時” 先單獨一個一個去換, 然后再排例組合,
好了,現在關鍵問題來了,小T不會寫這種代碼耶(哈哈哈哈)!!!不過還有一個很牛的辦法,手動操作窮舉走起,不過看了一下介面數量:10幾個,每個引數也不算少,不窮舉,排列組合下來也很多了,小T想了一下大約需要50來個小時而已,OK,系統沒掛掉小T先掛了!
同時小T測驗的不是單一介面是一個包含一系列介面的業務場景,這不上周一個講過的:《研發管理你痛過嗎?》的推文中提到過介面編排,

最后還是小C給小T支了招,了解一下Codes的對應功能,小T趕緊進了Codes的技術支持群,技術支持告訴小T,這個小case呀 ,介面場景編排加介面混沌測驗可以一步到位 ,真是爽得不要不要的,真擔心系統會不會一搞就掛了,先拿告訴我的方案POC一下,之前真是發愁呀,小T就一個小白,按官方給的DEMO POC下來幾分鐘完事,不信你看看POC程序,
step1:定義好介面場景中的每個介面
聽說是可以進行錄制可惜小T還不會用,先手動增加登錄介面以及POC的場景中其它相關介面,

step2:設定登錄介面斷言
小T覺得拖拽式的方式設定斷言蠻爽的,當然高級玩家們也可以自己編碼實作哦,

step3:編排業務場景
拖拽式編排介面為業務場景,說實在的不要太爽啦!(小T已暈)

step4:設定業務場景流轉條件
真的就像是作業流一樣,雙擊介面間的連線可以設定流轉條件,會把前一個介面的回應結果決議為一個樹狀結構,拖動樹狀結構上的節點,如下圖所示:

step5:設定好所有流轉邏輯

step6:下面是最哇塞的功能,自動推導介面間依賴拓撲

step7:配置混沌規則并在場景中應用
Codes可以配置任意多的混沌規則,小T假定場景中某個介面的引數為M,配置了N個混沌規則,執行場景中每個介面的次數 M+C ab * P aa (M和N哪個大哪個是a 另一個是B),假定場景中有X個介面那么總執行次數就是希格碼 M+C ab * P aa


step8:運行場景查看呼叫鏈

step9:查看呼叫情況及混沌日志
查看某次正常執行情況,

(還好系統在這里居然沒掛,30多秒里運行了1800多次)

小T最后總結一下:
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/549863.html
標籤:其他
上一篇:IDA 特征碼生成和搜索腳本
