自動測試介面指令碼,主要用於自動化測試一連串介面
阿新 • • 發佈:2022-03-28
curl 系統自帶的發請求工具,無需安裝!
## # @Author lambert # @date 2022/3/28 # 用於自動化測試介面(適用於Spring Cloud 帶有閘道器的場景,埠地址隨機分配,uuid等資訊會更換。省去重複的工作!!) ## echo "自動測試指令碼V1.1" echo "請輸入配置資訊(Enter自動讀取預設配置)" read -p "url: " -t 120 url if [ !${url} ];then echo "未輸入url,讀取預設配置" url='localhost:100010' # 預設url else echo "url初始化完成" fi xhr1="$(curl -X POST $(url)/satellite/start | grep "port")" # 傳送curl請求到url,並使用grep對結果資訊過濾 port=$(echo $xhr1|sed -rn "s/.*\"port\":([0-9]*)}}/\1/p") # 使用sed對有效資訊進行提取 -r 開啟正則、-n顯示匹配結果、/p顯示符合條件的資訊 echo "-------------------------------------------------------------------------------------------------------------------" echo $xhr1 echo "xhr1: ${url} 請求完成" echo "-------------------------------------------------------------------------------------------------------------------" url2='192.168.54.41:8888/api/configsim' param2="{\"test\":${port}}" xhr2="$(curl -H "Accept:application/json" -H 'Content-Type:application/json' -X POST -d $param2 ${url2} | grep "uuid")" # 傳送curl請求到url2,並用grep對結果資訊過濾 uuid=$(echo $xhr2|sed -rn "s/.*\"uuid\":(.*)}/\1/p") # 使用sed對有效資訊進行提取 -r 開啟正則、-n顯示匹配結果、/p顯示符合條件的資訊 echo "-------------------------------------------------------------------------------------------------------------------" echo $xhr2 echo "xhr2: ${url2} 請求完成" echo "-------------------------------------------------------------------------------------------------------------------" echo "指令碼執行結束" read -p "end" -t 120 end # 保證指令碼執行完不會一閃而過