HN 日本語サマリー

← 一覧へ戻る
プログラミング

Cargo-nextest: cargo testより3倍高速、テストごとの分離、ファーストクラスのCI

Cargo-nextest: 3x faster than cargo test, per-test isolation, first-class CI (nexte.st)

160 pointsby nateb202246 コメント

要約

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を実行してください。