
OpenAPIエンドポイント向けの自動REST APIファザーおよびネガティブテストツール。コーディング不要で数千の自己修復テストを生成、実行、レポートし、境界やセキュリティのシナリオをカバーします。
CATSのドキュメントは https://endava.github.io/cats/ で入手可能です
REST APIファズザー兼ネガティブテストツール。コーディング不要で数分のうちに数千の自己修復APIテストを実行できます!
時間がない?1分間クイックスタートガイドをご覧ください!
シンプルで最小限の構文と平坦な学習曲線により、CATS(Contract API Testing and Security)は、コーディング不要で数分以内に数千のAPIテストを生成できます。 すべてのテストは、事前定義された100以上のファズザーセットに基づいて自動生成、実行、報告されます。 ファズザーは、完全にランダムな大きなUnicode値から、リクエストデータ型と制約に基づくコンテキスト依存の適切に作成された値まで、幅広い境界テストとネガティブシナリオをカバーしています。 さらに、CATSがリクエストペイロードを動的に生成することを利用して、単純なエンドツーエンドの機能テストを作成することもできます。
以下は、CATSの使用手順をステップバイステップで説明した記事のリストです:
> brew tap endava/tap
> brew install cats
CATSは実行可能JARとネイティブバイナリの両方としてバンドルされています。ネイティブバイナリにはJavaは必要ありません。
お使いのOSのネイティブバイナリをダウンロード後、PATHに追加して他のコマンドラインツールと同様に実行できます:
sudo cp cats /usr/local/bin/cats
また、cats_autocompleteスクリプトをダウンロードして以下のように実行することで、オートコンプリートを利用できます:
source cats_autocomplete
永続的なオートコンプリートにするには、上記の行を.zshrcまたは.bashrcに追加しますが、cats_autocompleteスクリプトの完全修飾パスを指定してください。
cats_autocompleteのソースで別の設定方法も確認できます。
Windows向けのネイティブバイナリはありませんが、uberjarバージョンを使用できます。これにはJava 25+のインストールが必要です。
java -jar cats.jarとして実行できます。
最新バージョンのダウンロードはリリースページから: https://github.com/Endava/cats/releases.
ローカルマシンでソースからCATSをビルドできます。Java 25が必要です。Mavenは既にバンドルされています。
最初のビルドを実行する前に、
./mvnw cleanを実行してください。CATSはOKHttpのフォークを使用しており、5.X.X-CATSバージョンでローカルにインストールされるため、公式バージョンを上書きする心配はありません。
以下のMavenコマンドを使用して、プロジェクトをuberjarとしてビルドできます:
./mvnw package -Dquarkus.package.type=uber-jar
これにより、targetフォルダにcats-runner.jarが作成されます。java -jar cats-runner.jar ...で実行できます。
GraalVM Javaバージョンを使用してネイティブイメージをビルドすることもできます。
./mvnw package -Pnative
単体テストの実行中にerrorログメッセージが表示される場合があります。これらはファズザーのネガティブシナリオをテストするための期待された動作です。
CONTRIBUTING.md を参照してください。