Azure ARM 템플릿을 테스트하고 이들이 로컬 VM에서 올바르게 쓰여지는지 여부를 검증하는 방법. Power Shell에서 시도했지만 유효성 검사 만합니다. 유닛 테스트하려면 ARM 템플릿을 테스트하십시오Azure ARM 템플릿 테스팅
답변
단위 테스트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
파일로 저장할 수 있습니다. 테스트를 실행
참고 : 블로그의 스크립트는 $parameterHash
정의되지에 오류가 있습니다, 그래서, 당신은 실행 내 다음 스크립트를 사용할 수 있습니다
<#
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
예제 출력에서 성공적인 시험
pester가있는 ARM 템플릿의 단위 테스트 조건에 대한 자세한 내용은 this blog을 참조하십시오.
또한 ARM 템플릿을 확인하는 도구 인 Azure ARM 템플릿 체커를 사용하는 것이 좋습니다. 템플릿에 사용 된 모든 매개 변수 또는 변수가 정의되어 있는지 확인하는 것은 빠르고 지저분한 도구입니다. this link에서 ARM 템플릿 검사기에 대한 자세한 내용을 볼 수 있습니다.
고마워요 .. 정말 도움이되는 내용입니다. –
안녕, @ SachidanandSharma. 나는 그것이 당신에게 도움이된다는 소식을 듣게되어 기쁩니다. 더 많은 커뮤니티를 도울 수 있도록 답변으로 표시 할 수 있습니다! 감사! –
이 powershell cmdlet을 사용하여 테스트 했습니까? 'Test-AzureRmResourceGroupDeployment' –