ページ内ナビ
概要
KarateはAPI testing、mocking、performance testingを統合したtest automation frameworkです。JSON/XML assertionを含むGherkin風DSLでscenarioを記述し、v2ではJava 21+とJUnit 6 integrationを基盤にparallelなtest executionを行えます。
特徴と向いている用途
公式資料に基づく紹介・実機未検証 · 内容確認日:
主な特徴
HTTP requestとJSON/XML assertionをGherkin風DSLで記述する
Feature/Scenario形式でURL、request、HTTP method、status、response match等を記述し、API testの入力とassertionを一つのfeature fileへまとめられます。
出典:[3]
mock serverとperformance testを同じtoolchainで扱う
v2はbuilt-in HTTP serverによるAPI mockingとperformance testingを主要機能として掲げ、functional testからload testへ同じscenario資産を展開できます。
出典:[3]
向いている用途
導入前の確認
v2.1.3はJava 21以上とJUnit 6系を前提にする
v2.1.3のPOMはJava release 21、JUnit 6.1.3を基準にし、karate-junit6 artifactを提供します。既存v1/JUnit5 projectではruntimeとtest runnerの移行を確認します。
v1のbrowser automationはv2ではまだ対象外
README_V2はv1がweb-browser automationをsupportしていた一方、v2には将来追加予定と明記しています。UI automation目的ではv2の現状機能を前提に採用しないよう注意します。
出典:[3]
参考にした公式資料
- [1]karatelabs/karate repository(2026-09-30)
- [2]Karate README(2026-09-30)
- [3]Karate v2 README(2026-09-30)
- [4]Karate v2.1.3 parent POM(2026-09-30)
- [5]Karate v2.1.3 JUnit 6 POM(2026-09-30)
- [6]Karate v2.1.3 release(2026-09-30)
- [7]Karate MIT license(2026-09-30)
編集部からの補足
Karate 2.1.3はv2系の安定版で、API test・mock server・performance testを統合します。v2はJava 21+とJUnit 6 integrationを前提にし、v1にあったweb-browser automationはREADME_V2で『将来追加予定』とされているため、現時点ではAPI中心のtest automationとして評価するのが適切です。
3ステップで試す
- 1
Karate JUnit 6 2.1.3を追加
Java 21以上のMaven projectへv2のJUnit 6 integrationをtest dependencyとして追加します。
<dependency><groupId>io.karatelabs</groupId><artifactId>karate-junit6</artifactId><version>2.1.3</version><scope>test</scope></dependency> - 2
API scenarioをfeature fileへ記述
まずHTTP requestとstatus assertionだけの最小scenarioを作ります。
Feature: API Scenario: health Given url "https://example.com" When method get Then status 200 - 3
JUnit 6からfeatureを実行
featureと同じpackageにrunnerを置き、mvn testで実行します。
@Karate.Test Iterable<DynamicNode> testApi() { return Karate.run("api").relativeTo(getClass()); }
成長
成長の推移 · 直近30日
8,972 Stars
推移データを蓄積中です。
Built with
カテゴリとタグ
GitHubデータ
関連情報
関連記事を投稿するこのOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。
あわせて探訪
- JUnit7,060 Stars
共通タグ 1件 · 共通カテゴリ 1件 · 同じ言語
PlatformとJupiterでJava/JVMテストを実行する標準的なテスト基盤
Java - REST Assured7,141 Stars
共通タグ 3件 · 共通カテゴリ 2件 · 同じ言語
JavaのDSLでREST APIへrequestを送り、status・header・JSON/XML bodyを検証する
Java - Rswag2,202 Stars
共通タグ 2件 · 共通カテゴリ 2件
Railsのrequest specからAPIをテストし、OpenAPI文書とSwagger UIを生成する
Ruby - n8n206,322 Stars
共通タグ 2件 · 共通カテゴリ 1件
visual workflow・code・AI agent・human approvalを一つのautomation runtimeへ接続する
TypeScript - Axios109,248 Stars
共通タグ 2件 · 共通カテゴリ 1件
browser・Node.jsでinterceptor・adapter・timeout・cancellationを共通化するPromise-based HTTP client
JavaScript - Playwright96,900 Stars
共通タグ 2件 · 共通カテゴリ 1件
Chromium・Firefox・WebKitを一つのAPI/Test runnerで操作し、E2E test・script・agent browser automationを実行する
TypeScript
情報の誤りを報告
掲載内容に誤りや古い情報があればお知らせください。