一個沒有 Postman 好用的工具,不試一下?

忘了 postman 是被誰種草的,很長一段時間內 postman 都是我做接口測試的首選工具,之前也有小夥伴跟我安利過 IDEA 中的 RestfulToolkit 插件,但是一直沒機會體驗,最近抽空玩了一把,感覺在某些場景下還蠻不錯的(不需要認證的場景下),和小夥伴們分享下。

1. RestfulToolkit

RestfulToolkit 是一套 RESTful 服務開發輔助工具集,它主要提供瞭如下功能:

  1. 根據 URL 直接跳轉到對應的方法定義 ( Ctrl \ or Ctrl Alt N );
  2. 提供了一個 Services tree 的顯示窗口;
  3. 一個簡單的 http 請求工具;
  4. 在請求方法上添加了有用功能: 複製生成 URL;,複製方法參數...
  5. 其他功能: java 類上添加 Convert to JSON 功能,格式化 json 數據 ( Windows: Ctrl + Enter; Mac: Command + Enter )。

它支持 Spring 體系 (Spring MVC / Spring Boot 1.x,2.x);支持 JAX-RS;支持 Java 和 Kotlin 語言。

2. 安裝

在 IDEA 中選擇 File->Plugins,然後搜索 RestfulToolkit,如下:

然後點擊 install 按鈕即可,安裝完成後重啓 IDEA 即可:

3. 使用

創建一個項目,在項目的右邊可以看到 Rest Services 選項,如下:

點開該選項卡,就可以進行 RESTful 接口測試了。

松哥寫了四個測試接口,大家來看一下:

@RestController
public class BookController {
    @PostMapping("/book")
    public RespBean addBook(Book book) {
        System.out.println(book);
        return RespBean.ok("添加成功");
    }

    @GetMapping("/book/{id}")
    public Book getBookById(@PathVariable Integer id) {
        Book book = new Book();
        book.setId(id);
        return book;
    }

    @PutMapping("/book")
    public RespBean updateBook(@RequestBody Book book) {
        return RespBean.ok("更新成功");
    }

    @DeleteMapping("/book")
    public RespBean deleteBookById(Integer id) {
        return RespBean.ok("刪除成功");
    }
}

這四個藉口基本上涵蓋了我們日常常見的傳參方式,啓動項目,我們來看下右邊:

可以看到,項目啓動成功後,四個測試接口都會在 RestfulToolkit 工具中展示出來:

並且不同的接口,都有對應的默認參數,例如更新接口,參數是 JSON 格式,這裏就會自動列出來:

開發者只需要根據實際情況重新填一下具體的參數值即可。

測試成功,結果如下:

RestfulToolkit 有一個功能,就是點擊接口,可以跳轉到對應的方法定義上,如下:

選中接口,右鍵單擊,有兩個選項:

  • Copy Full Url:拷貝完整的 URL 地址。
  • Jump to Source:跳轉到接口定義的代碼處。

除了這個,RestfulToolkit 還能幫我們根據一個類,快速轉換爲 JSON,有時候我們用 postman 測試的時候,自己寫 JSON 太慢了,這是一個好辦法,具體操作如下:

選中類名,右鍵單擊,最上面有兩個選項,如下:

  • Convert to JSON(Compressed):生成一個壓縮後的 JSON,其實就是一行 JSON。
  • Convert to JSON:生成一個帶格式的 JSON。

4. 一個題外話

有的小夥伴可能會問,用 RestfulToolkit 的話,基於 Cookie+Session 的認證怎麼辦?其實,一個合格的 RESTful 接口,本身就是無狀態的,既然是無狀態的,那麼認證就不需要 Cookie 了,每個請求都自己帶上令牌就行了,反正 RestfulToolkit 也支持修改請求頭。

不過話說回來,如果你的項目就是基於 Cookie + Session 認證的,那麼接口測試,我還是建議使用 postman,畢竟這個工具更專業。或者你也可以試試 IDEA 自帶的 Http Client 工具,如下圖:

好啦,今天和小夥伴們分享了一個小工具,感興趣的小夥伴可以去體驗一把啦~對了,2020 版之後的 IDEA 可以使用 Restful Tools。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章