プログラミング
Cargo-nextest: cargo testより3倍高速、テストごとの分離、ファーストクラスのCI
Cargo-nextest: 3x faster than cargo test, per-test isolation, first-class CI (nexte.st)
要約
Cargo-nextestは、Rustのテスト実行を高速化し、信頼性を向上させるための新しいテストランナーです。従来のcargo testと比較して最大3倍高速な実行速度を実現し、テストの選択、失敗したテストの特定、およびCI環境での効率的なテスト実行に特化しています。テストごとの設定や、テスト実行の記録・再生機能なども提供し、開発ワークフローの改善を目指しています。
全文翻訳
クリーンで美しいユーザーインターフェース
テストの合格と失敗を一目で確認できます。
テストの実行
cargo testよりも最大3倍高速
Nextestは、より高速で信頼性の高いテスト実行のために、最新の実行モデルを使用しています。
ベンチマーク
強力なテスト選択機能
洗練された式言語を使用して、必要なテストを正確に選択します。名前、バイナリ、プラットフォーム、またはそれらの任意の組み合わせでフィルタリングします。
フィルターセット
誤動作するテストを特定する
テストをペットではなく家畜として扱います。遅いテストを検出し、終了させます。ストレステストでテストを何度もループさせます。
遅いテストとタイムアウト
テストごとの設定をカスタマイズする
一部のテストを自動的に再試行したり、重いテストとしてマークしたり、シリアルに実行したり、その他多くのことができます。
テストごとの設定
記録、再生、再実行
すべてのテスト実行を記録します。CI実行をローカルで再生します。失敗したテストを再実行します。詳細な分析のためにPerfettoトレースをエクスポートします。
記録、再生、再実行
CI向けに設計
複数のワーカーにテストをアーカイブおよびパーティション化し、JUnit XMLをエクスポートし、プロファイルを使用してさまざまな環境に対応します。
設定プロファイル
セットアップスクリプト
テスト開始前に、テストごとのスコープでセットアップスクリプトを実行します。データベースを初期化し、サービスを起動し、フィクスチャを準備します。
セットアップスクリプト
ツールのエコシステム
テストカバレッジを収集します。突然変異テストを実行します。デバッガーを起動します。DTraceおよびbpftraceプローブを使用してシステム動作を観察します。
統合
クロスプラットフォーム
Linux、Mac、Windows、その他のUnixライクシステムで実行できます。バイナリをダウンロードするか、ソースからビルドします。
事前ビルド済みバイナリ
オープンソース、広く信頼されている
独立したオープンソースプロジェクトから世界最大のテクノロジー企業まで、あらゆる規模のRust開発をサポートします。
ライセンス (Apache 2.0)
最先端、愛情を込めて作られた
Nextestは、インフラストラクチャグレードの信頼性をテストランナーにもたらし、細部まで正確に作り上げることにこだわっています。
GitHubでスポンサーになる
クイックスタート
インストール
事前ビルド済みのバイナリを使用してcargo-nextestをインストールし、次に実行します。
cargo nextest run
注意
Doctestsは現在、安定版Rustの制限によりサポートされていません。現時点では、doctestsは別のステップでcargo test --docを実行してください。