javascript
SpringBoot | 第十五章:基于Postman的RESTful接口测试
前言
從上一章節開始,接下來的幾個章節會講解一些開發過程中配套工具的使用。俗話說的好,工欲善其事,必先利其器。對于開發人員而言,有個好用的工具,也是一件事半功倍的事,而且開發起來也很爽,效率也會提升很多。本章節主要講解關于Postman這款http模擬請求工具,一般上拿來測試api接口服務的。
題外話:對于Postman而言,本人也是僅僅使用了其中一小部分,還是本著夠用的原則,對于其一些高級功能,比如自動化測試、auth認證、js腳本及生成各類語言代碼(如cUrl、java、ajax等等),后期若有使用時,會再編寫一篇博文的。突然很感慨,要學習的東西真多呀,所以還是那句話:本著夠用就行!東西是學不完的!
- 關于Postman
- 安裝Postman
- 界面按鈕說明
- Postman測試RESTful接口示例
- 創建一個web項目
- 使用Postman測試:
- 相關資料
- 總結
- 最后
- 老生常談
關于Postman
Postman是一款功能強大的網頁調試與發送網頁HTTP請求的工具。Postman能夠發送任何類型的HTTP請求(GET, HEAD, POST,PUT..),附帶任何數量的參數和HTTP headers。支持不同的認證機制(basic, digest,OAuth),接收到的響應語法高亮(HTML,JSON或XML)。Postman既可以以Chrome瀏覽器插件的形式存在,也可以是獨立的應用程序存在。本文主要講解的是客戶端的使用。
安裝Postman
官方網站:https://www.getpostman.com/apps
按實際的操作環境,選擇對應的版本下載:
本文直接選擇當前最新版:v6.2.2。
下載后,按提示進行默認安裝即可,這里就不貼圖了。
界面按鈕說明
作圖不易呀,打開了從高中開始用的Fireworks。一個程序猿還需要會作圖,(┬_┬)。不美觀,順序混亂,就湊合看吧。還想怎么樣!
1.History:記錄歷史請求記錄,一般上所有的請求,都會會在此面板上出現,按日期區分,點擊可快捷新增一個該請求的tab欄。
2.Collections:收藏夾。你可以按請求的類型或者項目,進行目錄的創建,便于管理。可以創建子目錄,同時也可批量進行請求,大家可點開看看,應該都知道意思
內部按鈕:
3.便簽頁:可切換不同的便簽頁進行顯示。
4.請求方式:如GET、POST、DELETE等。
5.請求地址:需要測試或者訪問的api地址,支持變量,變量寫法:{{param}},
6.URL參數值(querystring):設置url后面的參數值,如author=okong&name=okong
7.點擊可發送請求,同時支持下載。
8.保存當前的請求至Collections中,也可另存為成其他的Collections。下次可以快捷點擊。
9.鑒權參數,可以設置如OAuth、OAuth2等協議。
10.HTTP Header:自定義請求頭部信息。
11.請求體(Body)設置,如POST請求時,設置請求的參數,或者二進制流、json格式參數、xml格式參數等等。
12.發起請求之前執行的腳本,例如request body里的那兩個random變量,就是每次請求之前臨時生成的,不熟悉,目前沒有用過。
13.響應測試,返回的參數進行檢驗,校驗結果會顯示在19功能模版中。目前也沒有用過,,跳過。。
14.各域名下的cookies查看、新增:
15.code:可一鍵生成不同語言的請求代碼,如cUrl、java等。
cUrl:
java:這里使用的是okHttp工具
16、17、18、19都是請求響應response對應的參數值了,應該都比較熟悉了。如返回的值,cookies、Header、響應測試結果等。
20.請求響應的狀態(status)值,如200等,還有響應時間和大小等。吐槽:入門級的服務器就是慢。。200毫秒。。
21.拷貝返回的參數到剪貼板中,就是Ctrl+c功能了,在其他地方可直接粘貼。
22.返回參數里面進行查詢。
23.返回參數的不同預覽狀態,其實就是美化。。
24.設置不同的工作空間,就像eclipse一樣,可不同的項目不同的工作空間。
25.設置不同環境下的變量值,就像后端開發有測試環境、開發環境、聯調環境等一樣的。
Postman測試RESTful接口示例
以一個簡單的web服務,進行post、get等常用的請求示例,其他的大家可自己安裝后自己實踐下,自己動手豐衣足食呀~
創建一個web項目
這里創建以常見的http請求方式,如get、post、delete、put進行簡單示例下。
RestfulController.java
/*** 基于Postman的RESTfulAPI接口測試* @author oKong**/ @RestController @Slf4j public class RestfulController {@GetMapping("/get")public String get(String msg) {log.info("get方式!");return msg;}@PostMapping("/post")public String post(@RequestBody String msg) {log.info("post方式!");return msg;}@PutMapping("/put")public String put(@RequestBody String msg) {log.info("put方式!");return msg;}@DeleteMapping("/delete")public String delete(String msg) {log.info("delete方式!");return "delete " + msg + " success!";}/*** 設置返回狀態為417* @param msg* @return*/@GetMapping("/status")@ResponseStatus(HttpStatus.EXPECTATION_FAILED)public String status(String msg) {log.info("status方式!");return msg;} }使用Postman測試
1.get方式:
2018-07-28 23:26:39.783 INFO 18092 --- [nio-8080-exec-5] c.l.l.s.chapter14.RestfulController : get方式!2.post方式:
2018-07-28 23:29:00.143 INFO 18092 --- [nio-8080-exec-4] c.l.l.s.chapter14.RestfulController : post方式!3.put方式
4.delete方式
5.httpStatus狀態測試(設置返回的ResponseStatus):
6.請求方式不正確時:
此時,可以把各請求保存到Collections中,可以測試下批量執行的功能run.
批量執行:
控制臺:
相關資料
這幾篇講解的比較簡單明了:
1.https://www.cnblogs.com/xiaoxi-3-/p/7839278.html
2.https://blog.csdn.net/ma_jiang/article/details/78574691
3.官方文檔:https://www.getpostman.com/docs/v6/
總結
本章節主要是講解了利用Postman進行RESTful接口風格進行測試,也簡單介紹了關于Postman的簡單用法。在本人使用過程過程中,以上幾種方式基本上已經滿足開發需求了。前面也介紹過了Swagger了,在對接第三方系統服務時,Swagger基本就用不上了,這個時候Postman的作用就體現出來了。不同場景下用不同的測試工具。至于一些關于Postman的高級用法,大家需要的話就自行搜索查找下相關資料吧,其他功能我是基本上沒有用上。。(┬_┬)
最后
目前互聯網上很多大佬都有SpringBoot系列教程,如有雷同,請多多包涵了。本文是作者在電腦前一字一句敲的,每一步都是實踐的。若文中有所錯誤之處,還望提出,謝謝。
老生常談
- 個人QQ:499452441
- 微信公眾號:lqdevOps
個人博客:http://blog.lqdev.cn
原文地址:http://blog.lqdev.cn/2018/07/28/springboot/chapter-fifteen/
完整示例:chapter-15
轉載于:https://www.cnblogs.com/okong/p/springboot-fifteen.html
總結
以上是生活随笔為你收集整理的SpringBoot | 第十五章:基于Postman的RESTful接口测试的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Mac python3.x使用HTMLT
- 下一篇: Scrapy爬取妹子图保存到不同目录下