订阅软件研发RSS CSDN首页> 软件研发

[图书连载]微软测试管理框架(Microsoft Test Manager)

发表于2011-01-20 13:27| 次阅读| 来源CSDN| 0 条评论| 作者陈秋歌

摘要:本文为电子工业出版社推出的《构筑敏捷的开发团队:微软Visual Studio 2010实战兵法》图书第八章连载之三。 Visual Studio 2010中对架构设计、项目模板、测试管理、项目门户等都进行了全面的改进

本文为电子工业出版社推出的《构筑敏捷的开发团队:微软Visual Studio 2010实战兵法》图书第八章连载之三。

Visual Studio 2010中对架构设计、项目模板、测试管理、项目门户等都进行了全面的改进;对于MS Project、SharePoint、Hyper-V 虚拟化平台及云计算平台进行了全面的集成。测试和实验室的管理功能相对比较独立,所以作为一个单独工具使用更为轻便。

在服务器端,实验室管理服务是内部的Team Foundation Server(TFS)上运行的众多服务之一,这种解决方案是软件测试和开发人员比较独特的方式。现在我们可以映射实验室资源,例如主机、虚拟机和存储团队的项目集合与团队项目,因此可以调整实验室的硬件与业务需求来适应工作。

在客户端,管理虚拟资源仍然使用MTM工具。用户可以使用它定义测试计划、测试套件、测试用例及运行在物理或虚拟环境中。实验室管理体系结构如图1所示。

图1  实验室管理体系结构图

由上图可以看出,微软实验室管理框架结合了虚拟化技术。Hyper-V是微软新一代服务器虚拟化解决方案,构架和微软以往的虚拟化产品如Virtual Server、Virtual PC完全不同,可以说是微软虚拟化技术上的一个突破。因此,重要的是,了解围绕虚拟化的一些基本概念及如何在实验室管理中了解这种技术模式的转变。

Hyper-V是一个只有几百KB的小程序,它介于物理硬件和虚拟机之间,代码非常少,不含任何第三方驱动,非常精简。这种构架使得虚拟机和硬件之间只通过很薄的一层进行连接,不像Virtual Server那样在虚拟机和硬件之间需要经过多层的转换,因而虚拟机执行效率非常高,可以更加充分地利用硬件资源,使虚拟机系统的性能非常接近真实的操作系统性能。它可以模拟一个完整的硬件系统,从处理器到网卡,在一个独立的、孤立的软件环境中,使在一台物理计算机上的不兼容的操作系统同步运行。每个操作系统运行在它自己孤立的软件分区中。微软Hyper-V构架图如图2所示。

图2  微软Hyper-V构架图

微软测试管理器(MTM)中的实验室中心(Lab Center)在微软虚拟化技术基础上,可以创建及管理虚拟或物理环境;可对环境拍取快照,或者退回到虚拟环境的现有快照中;通过环境查看器,与环境中的虚拟机进行联系;为环境定义测试设置;还可以在测试中心中定义测试方案、测试套件和测试用例,并且在实验室环境中执行。

MTM工具具有以下管理功能:

● 虚拟机快照(Virtual Machine Snapshot):一个虚拟机快照是一个基于文件的快照状态,例如,磁盘上的数据及配置虚拟机到一个特定的时间点。快照使虚拟机在功能上类似于笔记本计算机休眠状态的时候具有的更大的灵活性。一个VM支持多个快照。你可以回滚到以前拍取的任何快照中,并可以继续在那里工作。Hyper-V虚拟机快照树如图3所示。

图3  微软Hyper-V虚拟机快照树

● 主机(Host):是一个物理计算机承载一个或多个虚拟机。

● 主机组(Host Group):是虚拟机的主机,而管理员可以在SCVMM中创造便于监测和管理的自定义组,可用于分配和确定各种团队项目预留的资源。例如,管理员可以创建一个主机组名为“全球保险主机的团队”,关于“全球保险工程”项目,并绑定到在Team Foundation管理控制台相应的团队项目中。

● 库共享(Library Share):对虚拟机的优点之一是,你不需要占用主机(如果你暂时不使用虚拟机VM)。你可以通过几分钟的复制把它存储在磁盘上,带到其他计算机环境中进行工作。

● 环境(Environment):一个典型的多层应用程序包括多个角色,例如,数据库服务器、Web服务器、客户端等,每个角色都可以在一个或多个计算机上运行,也可以在一台计算机上运行多个角色。在以前管理环境的多层次应用上,是一个非常麻烦且容易出错的工作,而且复制一个相同的环境更是一件很困难的事情。

在TFS实验室的管理服务中,使用系统中心虚拟机管理器(SCVMM)可以在多个虚拟化平台的虚拟机中进行配置管理,能够得到SCVMM在实验室管理中的一个虚拟机环境的镜像快照副本。

提示

SCVMM(System Center Virtual Machine Manager,系统中心虚拟机管理器)是虚拟化技术的管理工具,也是微软系统中心管理解决方案的一部分。SCVMM 2008 R2可以管理VMware ESX、微软Virtual Server 2005 R2和Windows Server 2008 R2 Hyper-V。

SCVMM具有六项新增功能:快速存储迁移、实时迁移队列、快速配置、主机兼容性检测、支持第三方CFS文件格式、支持Veritas卷管理器。它可以将物理服务器整合到一个虚拟架构提供端到端支持;可快速可靠地从物理到虚拟(P2V)及从虚拟到虚拟(V2V)机器转换;可以将虚拟工作负载在物理宿主服务器上,并且可以进行最优化的智能配置;实现虚拟机的快速部署和迁移;能够集中管理虚拟数据中心中所有组件块的完整库文件。

Visual Studio 2010重点强调了测试与开发人员的协作。测试影响视图(Test Impact View)和代码变更视图(Code Changes View)可以避免运行全部测试来验证某一个小的代码变更所造成的浪费,使得测试更加高效。除此之外,测试人员可以使用MTM工具进行bug生命周期的跟踪和控制(Plan|Test|Track|Organize命令)。通过Testing Center进行新bug发布。

MTM引入了一些新的概念,从字面上一般都能轻易理解,包含下面4个概念:Test Plan、Test Suites、Test Case和Configurations。使用VS 2010中提供的UML类图描述了它们之间的关系,如图4所示。

图4  MTM对象的关系图

由上图看出,Test Plan是MTM中管理的顶层对象。在启动了MTM时需要连接到TFS工程,这个工程必须是团队使用的工程,它保存了开发团队创建的用户需求工作项、代源代码等,Test Plan对象必须在这个工程中创建。

Test Suites实际上用来组织Test Case,类似于文件系统中文件夹的作用。Test Case在这里指的是手工测试用例,它描述了测试的详细执行步骤,以及每个步骤执行完的期望结果,更准确地讲这里的Test Case是指手动测试用例(Manual Test Case)。Configuration则定义了Test Plan的各种执行环境配置。在这其中,Requirement映射到TFS的User Story类型的工作项,而Test Case和Shared Step对应于Test Case和Shared Step工作项。MTM为这些对象的管理和使用提供了操作界面,如图5所示。

图5  MTM对象的管理界面

注意

在这里需要指出的是,Automated Test Case只能在VS测试工程中定义和实现代码,并可以在VS中运行,其代码保存在TFS工程的代码控制器中。Automated Test Case在与MTM中定义的Test Case关联后,也可以在MTM中执行。

[上一节] Visual Studio 2010测试框架

[下一节] 微软测试管理(Microsoft Test Manager)

0
0
[图书连载]微软测试管理框架(Microsoft Test Manager)
  • CSDN官方微信
  • 扫描二维码,向CSDN吐槽
  • 微信号:CSDNnews
程序员移动端订阅下载

微博关注

相关热门文章