約束條件:
swagger中一定要在注解@ApiOperation中設置nickname的唯一值,例如:
@ApiOperation(value="新增用戶",notes="添加用戶",nickname="adduser")
這是因為Katalon在解析swagger的json文件時,API命名是通過提取operationId這個鍵的值來自動生成的,如果不通過nickname對operationId進行唯一值設置,默認為方法名稱+Using+請求方式
,例如:
"post": {
"tags": [
"部門管理"
],
"summary": "新增單個對象",
"operationId": "addUsingPOST",
"consumes": [
"application/json"
],
"produces": [
"*/*"
],
當不同類均用add代表添加時,katalon自動生成的API將出現重名問題,不便於接口命名唯一性,因此建議進行約束。
swagger接口文件導出
swagger的正確打開方式其實是api設計器,在接口設計階段開發人員可以使用swagger Editor編寫API設計,評審通過后自動生成項目的api代碼框架,開發人員只需要在框架中編寫相關接口實現即可,不過現實工作中由於各種原因很多開發工程師在代碼編寫過程中通過添加注解完成swagger。測試工程師可以通過自己所負責項目的swagger服務自動獲取json格式的api文件,方法如下:
訪問項目http:IP/swagger-ui.html#/用於獲取api-docs路徑,如下圖所示:
在瀏覽器中輸入:http:IP/api/test/v2/api-docs,顯示swagger接口的json內容,如下所示:
將本界面的內容保存為本地的json格式文件(建議使用chrome的FeHelper插件下載json文件)
啟動KS,創建新項目,使用導入swagger的方式創建接口請求,如下圖所示:
在彈出的import swagger界面選擇剛導出的json文件,點擊OK按鈕,自動生成接口請求,如下圖所示:
雙擊任意一條請求,右側顯示該請求的相關配置參數,如下圖所示:
其中自動生成的請求所有的協議默認為https,如果相關請求不是該協議需要手動修改,例如http(暫未找到解決方式)