ラボの概要
このラボは、「バグ修正をコミットする」ラボの続きです。Git は汎用 Student に合わせて設定されており、AWS CodeCommit の PresidentsApp リポジトリのクローンが、AWS Cloud9 インスタンスに既に作成されています。main.html ファイルは修正され、バナー画像は正しく表示されるようになっています。
このラボでは、AWS CodePipeline を使用して Presidents アプリケーションの単体テストを実行する方法を説明します。具体的には、亡くなったときの年齢を計算するロジックをテストします。John Adams 大統領の年齢が正しくないという報告がありました。これは、ロジックにバグがあることを示しています。まず、現在の単体テストを実行し、合格するかどうかを確認します。ところが、ここでは大統領の年齢が生まれた年から亡くなった年を差し引いて計算されているため、正確でないことがわかります。この問題を修正するために、アプリケーションのロジックを更新します。アプリケーションコードのロジックで relativedelta 型を使用し、大統領の生年月日から大統領が亡くなった特定の日までの時間がアプリケーションで確実に計算されるようにします。
アプリケーションを更新した後、変更をコミットし、更新内容を PresidentsApp CodeCommit リポジトリにプッシュします。Presidents-Pipeline が再び呼び出されます。単体テストが正常に完了したら、CodeDeploy を使用してアプリケーションのアップデートがデプロイされます。最後に、アプリケーションで年齢が正しく計算されることを確認します。
目標
このラボを修了すると、以下のことができるようになります。
- 単体テストが合格することを確認する。
- Presidents アプリケーションを更新し、relativedelta 型を使用して大統領の年齢を計算する。
- 変更を PresidentsApp CodeCommit リポジトリにプッシュする。
- パイプラインで新しい単体テストステージとデプロイステージが終了した後、アプリケーションで年齢が正しく計算されることを確認する。
技術知識の前提条件
このラボを修了するには、以下の技術的知識が必要です。
- AWS マネジメントコンソールの基本的な操作について理解している。
- AWS Cloud9 コードエディタとターミナルを使用したスクリプトの編集や実行に習熟している。
- Git、AWS CodePipeline、AWS CodeDeploy の基本的な知識があり、使い慣れている。
- AWS のサービスやサーバーレスコンピューティングに関する経験は役立つが、必須ではない。
所要時間
このラボの所要時間は 60 分です。
アイコンキー
このラボでは、さまざまな種類の手順と注記への注意を促すため、各種アイコンが使用されています。以下のリストは、各アイコンの目的を説明したものです。
- コマンド: 実行する必要があるコマンドを表す。
- 想定される出力: 出力のサンプルであり、コマンドまたは編集済みファイルの出力を確認するときに使用する。
- 注意: ヒントや重要なガイダンス。