为 SCVMM 环境创建“生成-部署-测试”工作流

 

发布时间: 2016年7月

备注

本主题适用于 SCVMM 环境。  如果要使用标准环境完成此过程,请参阅为标准环境创建“生成-部署-测试”工作流。  

你可使用生成、部署和测试工作流以自动将应用程序部署到 SCVMM 环境,并运行自动测试作为生成过程的一部分。  你还可将工作流配置为在部署应用程序前部署环境的快照,以便你的应用程序将部署到干净的环境。  此外,你可将工作流配置为在工作流完成后创建环境的快照,以便你可重现生成或部署故障。  之后用户可访问其环境中的应用程序,也可使用 Microsoft 测试管理器独立于生成过程来运行手动测试或自动测试。  有关“生成-部署-测试”工作流的概述,请参阅为标准环境创建“生成-部署-测试”工作流。  

要求

  • Visual Studio Enterprise、Visual Studio 专业测试工具版

本主题描述在为工作流创建部署脚本之后如何创建生成-部署-测试工作流。  有关创建部署脚本的信息,请参阅PAVE: Guidance for Build-Deploy-Test Workflows。  使用下列过程为 SCVMM 环境创建生成-部署-测试工作流:  

  • 检查系统必备

  • 创建生成、部署和测试工作流

  • 将详细信息添加到工作流

  • 运行工作流

  • 从生成结果连接到实验室环境

  • 在工作流完成后运行测试

系统必备

请先使用此列表验证你是否已完成下列任务,然后才能设置工作流来生成和部署应用程序:

先决条件任务

  1. 配置 Team Foundation 生成服务:Deploy and configure a build server

  2. 安装测试控制器并将其注册到团队项目集合中:在实验室环境中设置测试控制器

  3. 备注

    创建实验室环境后,请选择选项以运行测试和使用工作流。

    创建使用虚拟机的 SCVMM 环境:为手动测试创建虚拟机

  4. (建议)拍摄环境快照,以便你的工作流可在部署应用程序之前部署一个干净的环境。  请参阅对 SCVMM 环境使用环境快照。  

  5. 如果要在实验室环境中运行自动测试,则必须使用 Microsoft 测试管理器将测试添加到测试计划中并创建测试设置。  请参阅测试实验室环境。  

  6. 创建生成-部署-测试工作流可用于安装应用程序的部署脚本。  请参阅为“生成-部署-测试”工作流创建部署脚本。  

配置生成

生成-部署-测试工作流可部署应用程序的现有生成,也可先运行生成定义,然后部署新生成。  若要在工作流期间创建新生成,你必须单独创建工作流可用于生成应用程序的生成定义。  将生成详细信息添加到工作流后,你将选择现有生成的放置位置或选择用于创建新生成的生成定义。  

重要

如果你向生成-部署-测试工作流添加的是生成定义而不是生成放置位置,则必须在用于生成应用程序的生成定义中禁用测试。

创建生成定义。

为应用程序创建生成定义

  1. 在**“生成”菜单中,选择“新建生成定义”**。

  2. 在**“常规”选项卡上的“生成定义名称”框中指定一个名称,然后在“描述”**文本框中添加相应的描述。

  3. 执行本主题创建或编辑生成定义中介绍的步骤。

创建生成-部署-测试工作流

在本节中,你将创建生成-部署-测试工作流。

为工作流创建生成定义

接下来,另外为生成-部署-测试工作流创建一个生成定义,如下图所示:

使用实验室默认模板。

为工作流创建生成定义

  1. 在**“生成”菜单中,选择“新建生成定义”**。

  2. 在**“常规”选项卡的“生成定义名称”框中,指定一个名称。  在“说明”**框中,添加相应的说明。  

  3. 按照主题创建或编辑生成定义中所述,在**“触发器”“工作区”“生成默认值”以及“保留策略”**选项卡上选择设置。

    备注

    不必在“生成默认值”选项卡上为生成工作流输入生成放置路径,因为在使用实验室模板时不创建生成输出。  清除“我的生成副本输出”,不需要放置文件夹。  

  4. 若要能够为生成定义选择实验室模板,请在**“过程”选项卡的“生成过程模板”下,选择“显示详细信息”**。

    将显示一个下拉列表。

  5. 选择一个模板。  这是定义你工作流的生成过程文件。  

  6. 若要为生成定义创建工作流以将应用程序部署到虚拟环境,请从**“生成过程文件”**下拉列表中选择 LabDefaultTemplate.11.xaml。

添加工作流的详细信息

现在你可使用**“实验室工作流参数”**向导将详细信息添加到工作流中。

将这些详细信息添加到工作流并保存生成定义之后,你可将生成排队以运行工作流:

添加工作流的详细信息

  1. 若要输入工作流的数据,请在**“生成过程参数”下,选择“实验室过程设置”**,然后选择省略号 (…)。

    这会打开实验室工作流参数向导,你可在其中为工作流输入信息。

  2. **选择实验室环境:“环境”**选项卡上,选择要将应用程序部署到的 SCVMM 环境。

    备注

    此环境必须处于活动状态。  如果你要使用的环境存储在库中,则必须部署该环境,使其处于活动状态。  

  3. 选择干净的环境快照:(建议)如果你希望生成定义将实验室环境还原为已知状态,请选择**“还原到环境的特定快照”**,然后选择省略号 (…) 以选择特定快照。

    此时将显示**“选择环境快照”对话框。  选择相应快照,然后选择“确定”**。  

  4. 选择**“下一步”**。

  5. **选择生成定义或生成放置位置:**如果你希望工作流在每次运行时都生成应用程序,请执行下列步骤:

    1. 选择**“使用 Team Foundation Build”**,然后选择先前创建的定义。

    2. 选择**“为新的生成排队”**。

  6. 如果你希望工作流使用现有生成而不是重新生成应用程序,请执行下列步骤:

    1. 选择**“使用 Team Foundation Build”**,然后选择先前创建的定义。

    2. 选择**“选择现有生成”**。  然后从下拉列表中选择生成。  你选择的生成定义所创建的现有生成都显示在该列表中。  

    3. 从**“选择生成配置”**选择生成配置。

      备注

      生成配置在你为应用程序创建生成定义时指定。  如果存在多个生成配置,则可以从此列表中选择一个配置。  

  7. 如果要定义生成的位置,请选择**“使用指定位置的生成”**,然后指定现有生成的 UNC 路径。

  8. 选择**“下一步”**。

  9. 部署脚本和命令的详细信息:

    重要

    在完成一些后续步骤之前,你必须先为工作流创建部署脚本和命令。  请参阅为“生成-部署-测试”工作流创建部署脚本。  

    添加部署脚本。

    若要部署应用程序作为工作流的一部分,请从**“部署”选项卡中选择“部署生成”**。

  10. 若要添加部署应用程序所需的脚本或命令,请选择**“添加”**。  选择要为之添加脚本或命令的虚拟机或虚拟机角色。  

    现在,你可为实验室环境中的每台虚拟机添加脚本或命令。  例如,如果应用程序包含 Windows 客户端,则可以借助脚本,将可执行文件复制到编码的 UI 测试将用于在虚拟机上启动测试的位置处。  如果你拥有 Web 服务器,则必须运行脚本或命令以部署该部分应用程序。  有关如何完成此步骤的详细信息,请参阅为“生成-部署-测试”工作流创建部署脚本。  

  11. 选择后期部署快照:(建议)若要在应用程序部署后、但在任何测试运行前拍摄环境快照,你必须执行下列操作:

    备注

    需要调查问题时,你可使用此快照连接到环境并重新运行测试。

    1. 选择**“部署生成后,拍摄环境的快照”**。

      重要

      如果运行此生成定义作为夜间生成过程的一部分,则环境中的每台虚拟机最终将具有与之关联的许多快照。  这会降低虚拟机的性能。  此外,最多可以为每个虚拟环境存储 50 张快照。  因此,必须定期删除旧快照。  

    2. 在**“输入快照名称”**中,键入此快照的名称。

  12. 选择**“下一步”**。

  13. 添加自动测试的详细信息:

    若要在部署应用程序之后从工作流运行自动测试,请执行下列步骤:

    1. 选择**“在环境中运行这些测试”**。

    2. 在**“选择测试计划”**下,选择要使用的测试计划。  测试结果会保存为此测试计划的一部分。  

    3. 在**“选择测试套件”下,选择省略号 (…),然后在“选择测试套件”**对话框中,选择要运行的测试套件。

      备注

      默认情况下,会选择根测试套件。  如果你不想运行此测试套件中的测试,则必须清除此字段。  

    4. 在**“选择测试配置”**下,选择计划用于运行测试的配置。

      备注

      对于所选择的每个测试套件中的每个测试用例,其测试结果都会保存为套件中每个测试用例和所选择的测试配置的配对。  请参阅测试配置:指定测试平台。  

    5. 在**“选择自动测试设置”**下,选择你在本主题整个过程的第 9 步中创建的、用于匹配实验室环境中的角色的测试设置。  请参阅使用 Microsoft 测试管理器为自动系统测试创建测试设置。  

  14. 选择**“完成”**。

  15. 选择**“保存”**以保存生成定义。

    创建的生成定义显示在团队资源管理器中的**“生成”**文件夹中。

运行工作流

你可通过运行包含工作流的生成定义来运行工作流。

  1. 若要启动工作流,请转到**“生成”**文件夹,然后打开包含工作流的生成定义的快捷菜单。

    选择**“使新生成入队”**。

    此时将显示**“为生成排队”**对话框。

  2. 验证你的工作流的信息,然后选择**“排队”**。

    此时将显示**“生成资源管理器”**视图。

  3. 若要在生成进行时查看**“生成摘要”**视图,请双击生成。

    你便可以在进行生成时查看状态。

  4. (可选)如果你要在进行生成时查看环境,请打开 Microsoft 测试管理器,找到**“实验室中心”,选择“实验室”**,然后在列表中选择 SCVMM 环境。  你可查看生成的进度和实验室环境的详细信息,如下所示:  

    • 如果你选择此选项,则会还原快照。

    • 如果你选择此选项,则会拍摄后期部署快照。

    • 功能的状态(当功能准备就绪时,会显示绿色箭头)。

    • 运行时的测试(如果测试与用户界面进行交互)。

    如果工作流成功完成,则将看到绿色选中标记。  如果存在错误,则可以选择**“查看日志”**以查看详细信息。  

从生成结果连接到实验室环境

查看生成结果时,你可连接到 SCVMM 环境查看应用程序。  你可连接到环境的后期部署快照(如果在工作流中选择了此选项),也可连接到当前状态下的环境,如下图所示。  

从生成结果连接到环境

从生成结果连接到实验室环境

  1. 从团队资源管理器的**“生成”文件夹中,打开工作流的快捷菜单,然后选择“查看生成”**。

    此时将显示**“生成资源管理器”**视图。

  2. 若要查看已完成的生成,请选择**“已完成”**选项卡。

  3. 双击要查看的生成。

    此时将显示“生成摘要”视图。

  4. 选择**“查看环境快照”“<生成名称和编号>”**旁边的链接。

    此时将显示**“连接到环境”**对话框。

  5. 如果要连接到在部署应用程序之后拍摄的快照,请选择**“连接到此环境中的快照”**。

    备注

    通过连接到此快照,会丢弃在此后期部署快照之后进行的所有更改。  如果要保留任何更改,请连接到当前状态下的环境,在拍摄快照之后,再还原为后期部署快照。  有关如何拍摄快照的信息,请参阅对 SCVMM 环境使用环境快照。  

  6. 如果要连接到当前状态下的环境,请选择**“连接到当前状态下的环境”**。

  7. 选择**“连接”**。

    这将显示 Microsoft 环境查看器,并且将会连接到实验室环境。  现在可以使用部署的应用程序。  

在工作流完成后测试应用程序

在工作流完成并且应用程序部署到实验室环境之后,你可独立于工作流对应用程序运行测试。  如果你要在应用程序部署到 SCVMM 环境之后独立于工作流对应用程序运行测试,请查看下列主题:  

  1. How to: Run Manual Tests and Create Reproducible Bugs in SCVMM Environments

  2. 自动化“生成-部署-测试”工作流

请参阅

为标准环境创建“生成-部署-测试”工作流
Running Tests in Lab Environments