Viteを活用したユニット・コンポーネントテストフレームワーク。テストでもViteの設定、transformer、プラグインを再利用できます。
- スター
- 20,825
- フォーク
- 1,466
- 未解決の Issue
- 75
- 最終コミット
- 一昨日
これは何?
AVAは、テストコードを短く保ちながら、失敗時に読みやすい出力を提供するNode.js向けテストランナーです。`test()`と`t`実行コンテキスト上のアサーションを使ったシンプルなAPIでテストを記述でき、テスト本体ではPromiseとasync関数の両方をサポートします。
各テストファイルは独立した環境で実行され、テストはデフォルトで並行実行されるため、暗黙のグローバル変数に依存しないアトミックなテストを書きやすくなります。アサーションに失敗すると、コードの抜粋やオブジェクト、配列、文字列の見やすい差分が表示され、スタックトレースからは無関係な行が取り除かれます。CIでは、AVAが対応環境を検出し、並列ビルド間でテストファイルを分割します。
AVAにはTypeScript定義、TAP reporter、watch mode、snapshot testingが含まれています。プロジェクトにローカルインストールし、`test`スクリプトまたは`npx ava`から実行します。
主な機能
- 01テストファイルごとに環境を分離した並行テスト実行
- 02コードの抜粋とシンタックスハイライト付き差分を表示するMagic assert
- 03無関係な行を除いた見やすいスタックトレース
- 04並列CIビルド間でテストを自動分割
- 05TypeScript定義、TAP reporter、watch modeを標準搭載
ユースケース
- Node.jsライブラリやバックエンドサービスのユニットテスト
- 大規模なテストスイートを並列CIビルドで素早く実行
- 同梱の型定義を使ったTypeScriptプロジェクトのテスト
クイックスタート
- 1
プロジェクトに AVA をインストールしてセットアップします
npm init ava - 2
プロジェクトのルートにテストを記述した test.js ファイルを作成します
- 3
テストを実行します
npm test
使う前に知っておきたいこと
- AVA はグローバルには実行できません。各プロジェクトにローカルインストールする必要があります。
- ドキュメントは ES modules を使用していることを前提としています。
収録されている特集
トピック
よくある質問
- ava とは?
- AVAは、簡潔なAPI、詳細なエラー出力、テストファイルごとのスレッド分離を備えたNode.js向け並行テストランナーです。 AVAは、テストコードを短く保ちながら、失敗時に読みやすい出力を提供するNode.js向けテストランナーです。`test()`と`t`実行コンテキスト上のアサーションを使ったシンプルなAPIでテストを記述でき、テスト本体ではPromiseとasync関数の両方をサポートします。
- ava は無料で使えますか?ライセンスは?
- ava は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- ava は今もメンテナンスされていますか?
- 活発にメンテナンス中。ava の最終コミットは 2026年10月23日 です。
- ava は何に使えますか?
- Node.jsライブラリやバックエンドサービスのユニットテスト 大規模なテストスイートを並列CIビルドで素早く実行 同梱の型定義を使ったTypeScriptプロジェクトのテスト
- ava のインストール方法は?
- プロジェクトに AVA をインストールしてセットアップします: npm init ava プロジェクトのルートにテストを記述した test.js ファイルを作成します テストを実行します: npm test
- ava はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/avajs/ava
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
ランタイム、バンドラー、テストランナー、パッケージマネージャーを単一の実行ファイルにまとめた、高速なJavaScript/TypeScriptツールキット。
Jestは、アサーション、モック、スナップショットテスト、対話型ウォッチモードを備えたJavaScriptテストフレームワークです。
ユーザーの操作に沿ってコンポーネントを検索・操作できる、軽量なReact DOMテストユーティリティ。
標準のgo testランナーで動作する、アサーション、モック、テストスイートを備えたGo向けテストツールキットです。
シンプルなアサーション、BDDスタイルのマクロ、基本的なマイクロベンチマーク機能を備えた、C++向けのヘッダーベースのユニットテストフレームワーク。