ワークフローを使用したテスト - Amazon CodeCatalyst

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ワークフローを使用したテスト

では CodeCatalyst、ビルドやテストなど、さまざまなワークフローアクションの一部としてテストを実行できます。これらのワークフローアクションはすべて品質レポートを生成できます。テストアクションは、テスト、コードカバレッジ、ソフトウェア構成分析、静的分析レポートを生成するワークフローアクションです。これらのレポートは CodeCatalyst コンソールに表示されます。

品質レポートタイプ

Amazon CodeCatalyst テストアクションは、次のタイプの品質レポートをサポートします。YAML でこれらのレポートをフォーマットする方法の例については、「」を参照してください品質レポート YAML の例

テストレポート

では CodeCatalyst、ビルド中に実行されるユニットテスト、統合テスト、およびシステムテストを設定できます。その後 CodeCatalyst 、 はテストの結果を含むレポートを作成できます。

テストレポートを使用すると、テストに関する問題のトラブルシューティングに役立ちます。複数のビルドからのテストレポートが多数ある場合は、テストレポートを使用して障害率を表示し、ビルドの最適化に役立てることができます。

次のテストレポートファイル形式を使用できます。

  • Cucumber JSON (.json)

  • JUnit XML (.xml)

  • NUnit XML (.xml)

  • NUnit3 XML (.xml)

  • TestNG XML (.xml)

  • Visual Studio TRX (.trx、.xml)

コードカバレッジレポート

では CodeCatalyst、テストのコードカバレッジレポートを生成できます。 CodeCatalyst は、次のコードカバレッジメトリクスを提供します。

ラインカバレッジ

テストがカバーするステートメントの数を測定します。ステートメントは、コメントを含まない単一の命令です。

line coverage = (total lines covered)/(total number of lines)

ブランチカバレッジ

ifcaseステートメントなどのコントロール構造のすべての可能なブランチからテストがカバーするブランチの数を測定します。

branch coverage = (total branches covered)/(total number of branches)

以下のコードカバレッジレポートファイル形式がサポートされています。

  • JaCoCo XML (.xml)

  • SimpleCov JSON (Simplecov-json ではなく simplecov によって生成され、.json)

  • クローバー XML (バージョン 3、.xml)

  • コベルチュラ XML (.xml)

  • LCOV (.info)

ソフトウェア構成分析レポート

では CodeCatalyst、ソフトウェアコンポジション分析 (SCA) ツールを使用してアプリケーションのコンポーネントを分析し、既知のセキュリティの脆弱性をチェックできます。重要度や修正方法が異なる脆弱性を詳細に説明する SARIF レポートを検出して解析できます。最も重要度の高いものから低いものの有効な重要度値は、CRITICAL、、HIGHMEDIUMLOW、 ですINFORMATIONAL

次の SCA レポートファイル形式がサポートされています。

  • SARIF (.sarif、.json)

静的分析レポート

静的分析 (SA) レポートを使用して、ソースレベルのコードの欠陥を特定できます。では CodeCatalyst、SA レポートを生成して、デプロイ前にコードの問題を解決できます。これらの問題には、バグ、セキュリティの脆弱性、品質の問題、その他の脆弱性が含まれます。最も重要度の高いものから低いものの有効な重要度値は、CRITICALHIGH、、MEDIUMLOW、および ですINFORMATIONAL

CodeCatalyst は、次の SA メトリクスを提供します。

バグ

ソースコードで見つかった可能性のあるバグの数を識別します。これらのバグには、メモリの安全性に関する問題が含まれる場合があります。バグの例を次に示します。

// The while loop will inadvertently index into array x out-of-bounds int x[64]; while (int n = 0; n <= 64; n++) { x[n] = 0; }
セキュリティの脆弱性

ソースコードで見つかった潜在的なセキュリティの脆弱性をいくつか特定します。これらのセキュリティの脆弱性には、シークレットトークンをプレーンテキストで保存するなどの問題が含まれる場合があります。

品質の問題

ソースコードで発生する可能性のある品質問題をいくつか特定します。これらの品質問題には、スタイル規則に関する問題が含まれる場合があります。品質問題の例を次に示します。

// The function name doesn't adhere to the style convention of camelCase int SUBTRACT(int x, int y) { return x-y }
その他の脆弱性

ソースコードで見つかった他の潜在的な脆弱性をいくつか特定します。

CodeCatalyst では、次の SA レポートファイル形式がサポートされています。

  • PyLint (.py)

  • ESLint (.js、.jsx、.ts、.tsx)

  • SARIF (.sarif、.json)