此存储库中的代码可用于分析和测试 Azure 资源管理器模板。测试将检查一个或一组模板的编码最佳实践。有一些针对简单语法错误的检查,但目的不是重新实现平台提供的测试或检查(例如/validate api)。
注意:从 0.10 版本开始,Bicep 现在包含 TTK 中包含的所有部署模板测试用例。我们将开始将新测试的投资转移到 Bicep linter。 TTK 将仍然可用以支持可用的 JSON 和 createUiDefinition 方案。
有关如何使用arm-ttk的详细说明,请参阅此自述文件。更多信息可以在文档中找到。
有关 arm-ttk 的指导教程,请查看此 MS LEARN 模块。
关于测试的一些信息...这些测试用于验证 Azure QuickStart Repo 和 Azure Marketplace 的模板。目的是确保一套标准或一致的编码实践,以便更轻松地使用模板语言开发专业知识(易于阅读、编写、调试)。
至于测试的类型、数量和性质,测试应该检查以下类别中的某些内容(根据您的想法添加更多:))
并非所有内容都适合通用测试集,也不是每个测试都适用于每个场景,因此该框架允许轻松扩展和单独选择测试。
测试可以直接在 PowerShell 中运行,也可以使用包装脚本从命令行运行。
您可以使用.arm-ttk.tests.ps1运行所有单元测试。
这将针对测试 json 文件运行全套单元测试。
使用:
# set your location in the project directory:
Set-Location -Path "$(YourGithubProjectFolder)arm-ttkunit-tests"
# import the module from the current branch, use -Force to make sure you have imported any code changes
Import-Module ..arm-ttkarm-ttk.psd1 -Force
# These are the same tests that run in the pipeline when doing a commit or a pull request (PR).
.arm-ttk.tests.ps1
该项目欢迎贡献和建议。大多数贡献都要求您同意贡献者许可协议 (CLA),声明您有权并且实际上授予我们使用您的贡献的权利。有关详细信息,请访问 https://cla.opensource.microsoft.com。
当您提交拉取请求时,CLA 机器人将自动确定您是否需要提供 CLA 并适当地修饰 PR(例如,状态检查、评论)。只需按照机器人提供的说明进行操作即可。您只需使用我们的 CLA 在所有存储库中执行一次此操作。
该项目采用了微软开源行为准则。
有关详细信息,请参阅行为准则常见问题解答或联系 [email protected] 提出任何其他问题或意见。