Swagger On 華為云Devcloud
1?Swagger簡介
1.1?概要
Swagger 是一個規范和完整的框架,用于生成、描述、調用和可視化 RESTful 風格的 Web 服務。?總體目標是使客戶端和文件系統作為服務器以同樣的速度來更新。?文件的方法/參數/模型緊密集成到服務器端的代碼,允許API來始終保持同步。Swagger 讓部署管理和使用功能強大的API從未如此簡單。
Swagger 是最流行的 API 開發工具,它遵循 OpenAPI Specification(OpenAPI 規范,也簡稱 OAS)。
Swagger 可以貫穿于整個 API 生態,如 API 的設計、編寫 API 文檔、測試和部署。
Swagger 是一種通用的,和編程語言無關的 API 描述規范。
1.2?Swagger序列化
1.3?官方地址
https://swagger.io/
2?Swagger實操
2.1?環境
(1)操作系統:window或者ubuntu
(2)瀏覽器:谷歌或者火狐
(3)數據庫:mysql5.6,外網可以訪問的或者部署主機內部可以訪問
2.2?準備
(4)創建新的數據庫實例:
連接mysql后,執行以下sql
2.3?實操
(5)登錄軟開云并創建項目
瀏覽器打開https://www.huaweicloud.com
按照此步驟登錄到軟件開發服務上,如果沒有華為云賬號需要先去注冊。
登錄之后開始創建一個項目
(6)創建代碼倉庫
進入新建的項目后,依次點擊代碼→代碼托管→新建倉庫,創建一個代碼倉庫
選擇模板新建,左側搜索swagger,選擇Web Server,點擊搜索后選擇右側swagger-devcloud倉庫,輸入倉庫名稱后點擊確定,創建完成。
(7)修改配置文件
點擊剛剛創建的代碼倉庫
依次點擊上方第三步的路徑后,點擊application.yml配置文件
點擊編輯后,修改數據庫的訪問地址,修改數據庫口令密碼,然后在下方填寫備注后點擊確定。
(8)編譯
在當前項目下依次點擊構建&發布→編譯→新建,創建一個編譯任務,填寫任務名稱后點擊下一步
選擇Maven模板然后點擊確定
確認代碼倉庫與分支,默認值即可,添加版本執行參數(雖然本文未用到但在學習流水線時會用到),然后點擊第三步,Maven構建
依次確認第二,第三步
第二步手動選擇:maven3.3.1-jdk1.8
第三步手動填寫:mvn package -Dmaven.test.skip=true
確認后點擊第四步,上傳軟件包到發布倉庫
第二步填寫:**/target/*.?ar
第三步填寫:${version}
第四步填寫:swagger-devcloud
確認后點擊新建→開始構建
構建完成。
(9)添加授信主機(部署機)
將服務器主機授信到DevCloud里,用于部署網站。
點擊“設置-通用設置-主機組管理”,將服務器以主機組的形式授信到項目當中。
新建主機組:
在主機組中添加主機:
(10)部署
回到當前項目下,創建模板部署任務
填寫任務名稱后點擊下一步,選擇模板:SpringBoot應用部署
點擊“確定”后,選擇部署步驟。
SpringBoot應用部署模板當中包含以下步驟:
停止SpringBoot服務(如果可能的話)、安裝JDK(如果可能的話)、選擇部署來源(將軟件包傳輸到主機上)、啟動SpringBoot服務
注意每個步驟的路徑及主機組信息確保正確。
點擊“保存”后,任務創建完畢。
點擊“執行”執行部署任務。
3?Swagger應用
3.1?訪問方式
Ip:8001/swagger-ui.html
3.2?常用功能
(11)下載swagger測試腳本
第一步:右鍵另存測試腳本
第二步:單機鏈接另存為,保存swagger測試腳本到本地
(12)接口測試
依次點擊user-controller→GET /user
點擊Try it out,下方會展現獲取的用戶數據
3.3?自動化測試
(13)導入測試腳本
依次點擊測試→接口測試→腳本模板→導入swagger文件(三→2→(1)中導出的)
(14)編寫接口測試用例
依次點擊測試→接口測試→測試用例→新建,輸入用例名稱后點擊保存并編寫腳本
先點擊準備進入準備階段,然后將第二步的接口拖入到第三步的位置,然后點擊第三步的接口名稱
配置請求參數,第二步可默認,第三步需要填寫mode信息:
{"address": "測試地址","age": "25","email": "測試郵箱@測試.com","name": "測試者","password": "123456","phone": "15141133332","sex": "男","status": "zc","type": "zc","username": "ceshi"}
然后配置請求頭
第二步選擇:Access-Control-Request-Headers
第三步填寫:{"Accept": "application/json;charset=UTF-8"}
屬性填寫:${code}
比較選擇:==
值填寫:200
參數類型選擇:String
參數名填寫:name
屬性填寫:${body}.name
點擊測試,進入測試階段,將左側的queryUserListUsingGET拖到右側,然后依次點擊接口名稱→請求參數
第二步可默認
第三步填寫:${name}
點擊請求頭,填寫名稱,值
名稱選擇:Access-Control-Request-Headers
值填寫:{"Accept": "application/json;charset=UTF-8"}
點擊檢查點,設置檢查值
填寫屬性:${body}
選擇比較:contains
填寫值:${name}
點擊傳遞變量,為下一階段傳遞參數
參數類型選擇:String
參數名填寫:user_id
屬性填寫:${body}[0].id
點擊銷毀階段,銷毀測試數據,將左側的deleteUserUsingDELETE拖拽到右側,然后依次點擊接口名稱→請求參數
步驟三可默認
步驟四填寫:${user_id}
點擊請求頭,設置請求頭數據
名稱選擇:Access-Control-Request-Headers
值填寫:{"Accept": "application/json;charset=UTF-8"}
點擊檢查點,設置檢查值
屬性填寫:${body}
比較選擇:be true
傳遞參數默認不填,點擊右上角調試按鈕,開始調試腳本
右側顯示調試日志,滾動到最下方,每個檢查點顯示通過即表示測試通過
回到接口測試用例管理頁面后,可通過點擊運行按鈕,來啟動測試腳本
(15)自動測試
依次點擊測試→接口測試→測試套件→新建測試套件
填寫套件名稱:用戶測試套件
選擇責任人
點擊保存
點擊編輯后,開始編輯測試用例
點擊添加用例,將之前做的接口測試放進去,如有需要可以添加多個測試用例
點擊執行,當下面測試用例結果展現成功后點擊返回按鈕,套件制作完成
依次點擊編譯構建→流水線→新建流水線
填寫流水線名稱后,給流水線設置為4個階段,分別為:
開始→ci→cd→test
開始階段保留一個參數,點擊編輯后參照右側
名稱:version
類型:字符類型
默認值:1.0.0
勾選提交代碼自動觸發流水線后,即可實現自動測試了,當代碼版本發生變化后自動出發流水線編譯部署測試等環節。
編輯ci階段,參照右側
類型選擇:構建
選擇swagger-devcloud構建任務
版本填寫:${version}
第四步選擇ci階段生成的軟件包
選擇之前制作的測試套件:用戶測試套件,然后點擊保存
點擊全新執行,測試流水線是否配置成功
3.4?代碼說明
(16)Maven中加入swagger依賴
(17)編寫swagger配置文件
(18)編寫rest風格的接口
①定義模塊名稱
②定義接口名稱以及說明
③定義參數類型
④定義接口路徑以及調用方式編碼等
軟件開發平臺 DevCloud 軟件開發云
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。