

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

# AWS IoT Greengrass テストフレームワークを使用する
<a name="gg-testing-framework"></a>

Greengrass テストフレームワーク (GTF) は、顧客の立場から見たエンドツーエンドの自動化をサポートする構成要素の集まりです。GTF は機能ドライバーとして [Cucumber](https://cucumber.io) を使用します。 は、同じ構成要素 AWS IoT Greengrass を使用して、さまざまなデバイスでソフトウェアの変更を認定します。詳細については、[Github の「Greengrass テストフレームワーク」](https://github.com/aws-greengrass/aws-greengrass-testing/tree/dev_v1)を参照してください。

GTF は、コンポーネントの動作主導型開発 (BDD) を促進するために、自動テストを実行するツールである Cucumber を使用して実装されています。Cucumber では、このシステムの機能の概要は、`feature` という特殊なタイプのファイルにまとめられています。各機能は、自動テストに変換できる仕様を持つ、シナリオと呼ばれる人間が読める形式で記述されています。各シナリオは、Gherkin と呼ばれるドメイン固有の言語を使用して、テスト対象のシステムの相互作用と結果を定義する一連のステップとして概説されています。[Gherkin ステップ](https://cucumber.io/docs/gherkin/reference/#steps)は、仕様をテストフローに固定するステップ定義と呼ばれる方法を使用してプログラミングコードにリンクされます。GTF のステップ定義は Java で実装されます。

**Topics**
+ [仕組み](#gg-testing-framework-how-gtf-works)
+ [変更ログ](#gtf-changelog)
+ [Greengrass テストフレームワークの設定オプション](configuration-options-gtf.md)
+ [チュートリアル: Greengrass テストフレームワークと Greengrass 開発キットを使用してエンドツーエンドのテストを実行する](run-e2e-tests-tutorial.md)
+ [チュートリアル: 信頼度テストスイートからの信頼度テストを使用する](confidence-tests-tutorial.md)

## 仕組み
<a name="gg-testing-framework-how-gtf-works"></a>

AWS IoT Greengrass は、複数の Java モジュールで構成されるスタンドアロン JAR として GTF を配布します。GTF をコンポーネントのエンドツーエンドのテストに使用するには、Java プロジェクト内でテストを実装する必要があります。テスト用スタンドタブル JAR を Java プロジェクトの依存関係として追加すると、GTF の既存の機能を使用したり、独自のカスタムテストケースを作成することで拡張したりできるようになります。カスタムテストケースを実行するには、Java プロジェクトを構築し、[Greengrass テストフレームワークの設定オプション](configuration-options-gtf.md) で説明されている設定オプションを使用してターゲット JAR を実行します。

### GTF スタンドアロン JAR
<a name="w2ab1c24c19c25c11b5"></a>

Greengrass は Cloudfront を [Maven](https://maven.apache.org/) リポジトリとして使用し、GTF スタンドアロン JAR の異なるバージョンをホストしています。GTF バージョンの全リストについては、[GTF リリース](https://github.com/aws-greengrass/aws-greengrass-testing/releases)を参照してください。

GTF スタンドアロン JAR には以下のモジュールが含まれています。これらのモジュールだけに限定されるものではありません。これらの依存関係をプロジェクト内で個別に選択することも、[テスト用スタンドアロン JAR ファイル](https://github.com/aws-greengrass/aws-greengrass-testing/tree/dev_v1/aws-greengrass-testing-standalone)ですべての依存関係をプロジェクトに一度に含めることもできます。
+ `aws-greengrass-testing-resources`: このモジュールは、テスト中に AWS リソースのライフサイクルを管理するための抽象化を提供します。これを使用して抽`ResourceSpec`象化を使用してカスタム AWS リソースを定義し、GTF がそれらのリソースの作成と削除を自動的に処理できるようにします。
+ `aws-greengrass-testing-platform`: このモジュールは、テストライフサイクル中にテスト対象のデバイスをプラットフォームレベルで抽象化します。プラットフォームとは独立して OS とやりとりするための API が含まれており、デバイスシェルで実行されるコマンドをシミュレートするために使用できます。
+ `aws-greengrass-testing-components`: このモジュールは、デプロイメント、IPC、その他の機能などの Greengrass のコア機能のテストに使用されるサンプルコンポーネントで構成されています。
+ `aws-greengrass-testing-features`: このモジュールは、Greengrass 環境でのテストに使用される再利用可能な共通ステップとその定義で構成されています。

**Topics**
+ [仕組み](#gg-testing-framework-how-gtf-works)
+ [変更ログ](#gtf-changelog)
+ [Greengrass テストフレームワークの設定オプション](configuration-options-gtf.md)
+ [チュートリアル: Greengrass テストフレームワークと Greengrass 開発キットを使用してエンドツーエンドのテストを実行する](run-e2e-tests-tutorial.md)
+ [チュートリアル: 信頼度テストスイートからの信頼度テストを使用する](confidence-tests-tutorial.md)

## 変更ログ
<a name="gtf-changelog"></a>

次の表に、GTF の各バージョンの変更をまとめています。詳細については、GitHub の「[GTF リリースページ](https://github.com/aws-greengrass/aws-greengrass-testing/releases)」を参照してください。


|  **バージョン**  |  **変更**  | 
| --- | --- | 
| 1.2.0 |  [See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/greengrass/v2/developerguide/gg-testing-framework.html) [See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/greengrass/v2/developerguide/gg-testing-framework.html)  | 
| 1.1.0 |  [See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/greengrass/v2/developerguide/gg-testing-framework.html)  | 
| 1.0.0 | 当初のバージョン | 