计划生成、测试和质量控制流程
本单元回顾了可用于管理生成、测试和质量控制流程的开发流程。 它还提供有关如何计划管理这些流程的信息。
为生成创建项目计划
根据您选择的方法,您需要选择生成的时间和位置。 您还需要决定生成的顺序。 例如,您不希望在未首先通过测试环境的情况下,按从开发环境到生产环境的顺序生成代码。
您还需要考虑如何处理未通过测试的开发,因为您需要回滚该开发。 此方法可阻止您提升错误。 您可以使用 Microsoft Dynamics 365 Lifecycle Services 帮助管理不同环境之间的生成。
例如,生成可能会将任何有错误的代码从您的测试环境回滚到开发环境,将成功的代码从测试环境提升到生产环境,最后将已完成的代码从开发环境提升到测试环境。
确定需要哪些环境
您应该在实施开始时计划选择您的环境。 计划环境时,您应:
- 确定环境的用途。 考虑您是否计划将环境用于开发、系统测试、用户验收测试 (UAT) 或操作。
- 考虑环境拓扑,例如开发或生成和测试。
- 考虑环境层级(第 1 层或第 2 层)。
第 1 层环境是一个单盒环境,所有组件安装在同一个服务器上。 第 1 层环境使用 Microsoft SQL Server 并进行结构化,以最大限度地提高开发效率。 该层级不适合 UAT 或性能测试。
第 2 层或更高层级的环境是一个多沙盒环境,其中包含安装在多个服务器上的组件。 第 2 层环境不使用 Microsoft SQL Server,而是使用 Microsoft Azure SQL 数据库。 该环境中的体系结构与生产环境相同,但不使用灾难恢复。 您应该将此环境用于 UAT 和性能测试。
环境的标准云产品/服务包括用于开发和测试的第 1 层环境、用于 UAT 的第 2 层环境以及生产环境。 系统在不同的时间提供这些环境:
- 第 2 层环境 - 在安装流程期间。
- 第 1 层开发和测试环境 - 在设计阶段开始时和在配置 Microsoft Azure DevOps 后。
- 生产环境 - 在生产系统为 Microsoft 准备就绪期间。 您必须通过 Lifecycle Services 请求此环境。
如果需要,您还可以为第 1 层和第 2 层环境添加另一个附加产品环境。 此外,您还可以将第 1 层环境部署为云托管的环境或环境映像。 客户或合作伙伴管理云托管的环境。 环境映像是使用虚拟硬盘的本地环境。
您可以选择您需要哪些环境以及何时需要这些环境。 您必须在 Microsoft 矩阵中汇总所需的环境列表。
您可以使用环境计划来帮助选择用于在所有环境中生成代码的流并构建您的 ALM。
计划需要多少测试
在实现财务和运营应用时,您需要决定如何测试等待审批的开发、执行测试的人员是谁、您要使用的审批标准是什么,以及如何跟踪测试。 您可以使用单元测试、回归测试和性能测试来测试系统。
单元测试对于测试特定功能是否有效很有用。 单元测试不检查新代码是否影响系统中的现有功能。
回归测试对整个流程运行测试,以确保现有功能在新开发中仍能正常运行。 例如,如果您进行了修改以添加与客户相关的功能,则您可能需要执行回归测试以确保新功能不会干扰现有功能(例如销售订单)。
您可能还考虑对系统进行性能测试以确保系统稳定。 为此,让多个用户进入系统并执行大量税务流程。 此方法可帮助您找到提高性能的机会。
财务和运营应用包括任务录制器工具,以帮助您记录用户所采取的流程步骤。 使用 Microsoft Azure DevOps,您可以将任务链接到开发项目解决方案。 然后,您可以使用任务跟踪更新、测试文档和其他注释。
开发人员的源代码管理和质量控制
在有些情况下,可能会有多个开发人员同时在财务和运营应用中工作。 为了防止开发人员干扰彼此的工作,您可以使用 Azure DevOps 项目设置源代码管理。
Azure DevOps 项目托管您的模型的源代码,允许用户签入和签出对象。签出对象时,系统将知道您正在进行更改。 签入对象时,系统将创建该对象的新版本。
版本控制允许您查看某人之前所做的更改。 您可以撤消对最近签入的更改挂起的更改。 此外,您还可以针对对象选择获取最新,这将提取该对象的最新签入版本。 开发人员应定期使用此功能以确保他们使用的是最新代码。
为了确保开发质量,请遵循 Microsoft Dynamics 365 X++ 最佳做法。 此外,您可能还希望制定自己的最佳做法(例如命名约定),以便在组织中使所有开发保持标准化。
选择版本控制系统
在财务和运营应用中,版本控制系统是必需的。 Azure DevOps 支持 Team Foundation 版本控制 (TFVC) 和 Git。
Azure DevOps Team Foundation 版本控制
Azure DevOps Team Foundation 版本控制系统是财务和运营应用的一个版本控制系统。 它是一个集中式版本控制系统,这意味着开发人员在一个分支中工作,并且在他们的开发计算机上每个文件都有一个版本。 每个分支都属于一个服务器工作区,每个开发人员都在一个本地工作区中工作。 当开发人员签入源代码时,他们必须确保签入最新版本并解决现有冲突。
默认情况下,TFVC 存储库在 Azure DevOps 的组织设置区域中处于停用状态。 您需要先激活存储库,然后才能创建使用 TFVC 作为版本控制系统的新 Azure DevOps 项目。
若要在您的组织中激活 Team Foundation 版本控制 (TFVC),请按照以下步骤操作:
- 通过转到 dev.azure.com/<your organization> 打开 Azure DevOps。
- 在仪表板的左下角,选择组织设置。
- 打开存储库 > 存储库。
- 在所有存储库设置部分中关闭禁用创建 TFVC 存储库开关。
您可以创建使用 TFVC 作为版本控制系统的新的 Azure DevOps 项目。
Git
Git 是推荐用于开发的 Microsoft 默认版本控制系统。
TFVC 是一个集中式版本控制系统,而 Git 是一个分布式系统。 每个开发人员都有自己的源存储库(或轻量级分支)副本,并可以向其中提交更改。 开发人员可以创建新的专用分支,并从一个分支切换到另一个分支。 在 TFVC 中,从一个分支切换到另一个分支更加困难,并且通常需要多个开发环境。
请务必注意,您可以从 TFVC 迁移到 Git,反之亦然。