我正在尝试使用ARM-TTK对我的ARM模板进行单元测试,并确保模板遵循一致性。我只运行了几个测试。我们使用Azure Repos作为我们的VCS
我已经将此合并到我的AZDO流水线中,作为pre PR合并任务,它以分支策略的形式存在,因此在PR合并之前,这些测试将运行并验证推送到主分支的所有模板。但问题是,即使JSON文件没有问题,测试也会返回假阳性。根据这个链接ARM-TTK,似乎必须有一个azuredeploy.json或maintemplate.json,并且所有其他文件都作为链接模板进行测试。我有其他名称的JSON文件,如win_vm_deploy.json,function_app-deploy.json等。我不可能像网址中提到的那样,将所有文件作为链接模板链接到azuredeploy.json或maintemplate.json。
我还希望针对存储库中加载的文件自动运行选定的测试,而不是指定要运行测试的特定文件。
那么,这是否意味着在我的情况下,我将不能使用ARM-TTK和单元测试?
检查我的特定文件夹中的模板并利用我从ARM-TTK中选择的一些单元测试的最佳方式是什么,但这样我就不必将主模板和其他模板作为链接模板。
感谢任何帮助
发布于 2021-09-28 06:22:04
当我们与多个人一起创建复杂的部署时,建议使用链接到azureDeploy.json或mainTemplate.json文件的单独JSON文件。但在每种情况下都不一定要做同样的事情。
要测试该文件夹中的一个文件,请添加-File参数。但是,该文件夹必须仍具有名为azuredeploy.json或maintemplate.json的主模板。在本例中,所有文件都需要在脚本中指定。自动化没有这样的捷径可用。
您可以自定义默认测试,甚至可以创建自己的测试。您可以通过编写自定义测试来实现您自己的规则集。自定义测试需要放在正确的目录中:
_/arm-ttk/testcases/deploymentTemplate_您可以查看此documentation以了解更多信息。
也可以在integration with Azure Pipeline上尝试此任务。
https://stackoverflow.com/questions/69336107
复制相似问题