OSS探訪

JavaのDSLでREST APIへrequestを送り、status・header・JSON/XML bodyを検証する

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
7,141
主要言語
Java
ライセンス
Apache-2.0
リポジトリ最終更新
2026/07/22
ページ内ナビ

概要

REST Assuredは、JavaからREST APIをテスト・検証するためのDSLです。given / when / then形式でrequest条件とHTTP呼び出し、response assertionをつなぎ、JSONPath・XmlPath・authentication・header・cookie・body検証などをテストコードへまとめられます。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

request作成からresponse assertionまでを一つのDSLで記述する

parameter、header、cookie、body、authenticationを指定し、POST・GET・PUT・DELETE・OPTIONS・PATCH・HEADを実行してstatusやbodyを続けて検証できます。

出典:[2]

JSONPath・XmlPathとHamcrest matcherでresponseを検証する

JSON/XML responseからpathで値を取り出し、equalToやhasItemsなどのmatcherを使ってAPI contractやbusiness conditionをテストできます。

出典:[2]

向いている用途

Java/Kotlin系のAPI integration testやE2E寄りHTTP testに向く

REST endpointを実際に呼び出し、request/responseの条件を読みやすいDSLとして保守したいテストスイートに向きます。Spring向けmoduleなども分離されています。

出典:[2][3]

導入前の確認

6.xはJava 17以上をbaselineにする

READMEは6.0.0でbaselineをJava 17+へ引き上げたと明記し、現行READMEのJavadoc参照は6.0.1です。既存の古いJDK環境ではupgrade条件を先に確認します。

出典:[2][3]

Spring/Jackson世代とmodule依存を合わせる

6.0.1ではSpring moduleがSpring 7を対象にし、Jackson 3 supportも拡張されています。Spring Bootなど既存stackへ導入する場合はmoduleとframework世代の組み合わせを確認します。

出典:[2]

参考にした公式資料

  1. [1]rest-assured/rest-assured repository(2026-09-30)
  2. [2]REST Assured README(2026-09-30)
  3. [3]REST Assured parent POM(2026-09-30)
  4. [4]REST Assured Apache-2.0 license(2026-09-30)
編集部からの補足

HTTP requestとresponse assertionを同じDSLで読めるため、JavaのAPI integration testを簡潔にしやすいライブラリです。6.xではJava 17+とframework世代の更新があるため、既存test suiteのruntime依存を先に確認してください。

3ステップで試す

  1. 1

    REST Assured 6.0.1をtest dependencyへ追加

    Maven projectのpom.xmlへtest scopeで追加します。6.xはJava 17以上がbaselineです。

    <dependency><groupId>io.rest-assured</groupId><artifactId>rest-assured</artifactId><version>6.0.1</version><scope>test</scope></dependency>
  2. 2

    DSLのstatic importを追加

    given/when/thenとHamcrest matcherをtest codeから直接使えるようにします。

    import static io.restassured.RestAssured.*; import static org.hamcrest.Matchers.*;
  3. 3

    GET responseを検証

    公式READMEの例と同じ形でendpointへGETし、JSON bodyの値をassertします。実際のtest serverに合わせてpathと期待値を置き換えます。

    get("/lotto").then().assertThat().body("lotto.lottoId", equalTo(5));
公式READMEで確認

成長

成長の推移 · 直近30日

7,141 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
0
Open PR
29

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

カテゴリ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • rest
  • rest-api
  • java
  • groovy
  • test-automation
  • test
  • json
  • xml
  • http
  • kotlin
Stars
7,141
Forks
1,943
Watchers
324
Open Issues
568
Contributors
159
所有者種別
Organization
主要言語
Java
ライセンス
Apache-2.0
リポジトリ最終更新
2026/07/22

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?