2017-11-14 25 views
3

Azure ARMテンプレートをテストし、これらがローカルVMから正しく書き込まれているかどうかを検証する方法。 私はPower Shellから試してみましたが、検証するだけです。私は単体テストのARMテンプレートをテストしたいAzure ARMテンプレートテスト

+0

このpowershellコマンドレットを使用してテストしましたか? 'Test-AzureRmResourceGroupDeployment' –

答えて

8

単位テストのPESTERのARMテンプレートを使用することができます。あなたが嫌悪に慣れていない場合は、this documentを参照してください。

例ARMテンプレート

試験されている例のテンプレートは、管理または非管理対象ディスクは、VMのために使用されているかどうかの選択を可能にします。テンプレートはこちらhttps://github.com/bentaylorwork/azure-arm-templates/tree/master/disk-management-selectionにあります。正しいディスクタイプがVMのディスクが管理または非管理対象ディスクに基づくべきかどうかのユーザ入力に基づいて展開されている場合以下

例せがむテスト せがむテストがチェックされます。ファイルは次の場所にあります。 https://github.com/bentaylorwork/azure-arm-templates/blob/master/disk-management-selection/tests/unit.tests.ps1ローカルマシンにtest.ps1ファイルとして保存できます。から

<# 
    Steps to run: 
    1) Login to Azure 
    2) Select correct subscription 
    3) Alter the path below to where you have the have saved the pester test locally 
#> 

$pesterParamters = @{ 
    Path  = 'C:\Users\Administrator\Desktop\test.ps1' 
    Parameters = @{ 
         templateUri     = 'https://raw.githubusercontent.com/bentaylorwork/azure-arm-templates/master/disk-management-selection/azuredeploy.json' 
         templateParameterObject  = @{ 
          resourcePrefix = 'pester' 
          adminPassword = 'SuperSecurePlainTextPassword123!!' 
         } 
        } 
} 

$parameterHash= @{ 
          resourcePrefix = 'pester' 
          adminPassword = 'SuperSecurePlainTextPassword123!!' 
         } 

Invoke-Pester -Script $pesterParamters 

出力例:ブログのスクリプトが定義されていない$parameterHashとの誤差を持っている、だから、あなたが実行するために私の次のスクリプトを使用することができます:テスト

NOTEを実行

成功したテスト

enter image description here

単位テスト条件の詳細については、pesterがあるARMテンプレートのthis blogに記載されています。

また、ARMテンプレートをチェックするツールもお勧めします。Azure ARMテンプレートチェッカー。テンプレート内で使用されているすべてのパラメータや変数が定義されているかどうかを確認するのはすばやく簡単です。 this linkにARMテンプレートチェッカーの詳細が表示されます。

+0

ありがとうございます..本当に役立つ情報です –

+0

HI、@ SachidanandSharma。それがあなたにとって有益だと聞いてうれしいです。あなたは答えとしてマークして、より多くのコミュニティを助けることができます!ありがとう! –

関連する問題