VSTS 2010的其中一个重要组件是实验室管理(Lab Management),很明显地,对于软件开发人员和测试人员来说,他们所开发和测试的应用程序面临复杂性的加速增长。对于微软内部以及其它业界的软件人员来说,这同样也是一个问题。
微软在开发VSTS 2010时,希望能够有一个好的工具来开发最高质量的软件。他们发现开发速度以及在整个开发-软件生成-实施-测试当中的可扩展性,以及如何应用新技术-如虚拟化技术,就是其中的一个差距。我们在实验室管理方面的投入就是特意为了来解决这个差距。
开发人员对于太多软件瑕疵(bugs)在他们以及他们的测试人员之间的“不断来回”而苦恼不已,并且在分布式的开发环境下感觉更棘手。测试人员缺少正确的工具,也没有得到足够的重视。
他们在测试环境的配置方面花费了30-50%的时间,然后很多他们所汇报的软件瑕疵(bugs)已“无法重现”为由而被解决掉。为了应对这些挑战,我们设立了一些基本的原则:a)配置环境应该只需要几分钟而不是几个星期b)开发人员和测试人员之间的障碍应该被消除c)自动化全面扩展至软件生成,环境的设置,软件安装以及测试d)消除软件瑕疵(bugs)“来回”现象。
实验室管理用户虚拟化技术与我们的整体应用软件的开发周期管理的深层次集成,以及系统中心虚拟机管理系统提供了对于这些原则的解决方案。该方案是用来加速设置/分割/恢复复杂的虚拟环境到一个干净的状态。我们允许测试人员写丰富的瑕疵报告,包括环境恢复点的链接,这样开发人员就可以用来重现该软件瑕疵被发现的环境,从而解决了软件瑕疵不可重现的问题。
最后,我们把预设虚拟机,软件安装以及验证做成一个集成的方案,提升了软件生成的自动化程度。我们相信,这种方法可以使得团队更加有效的包容变化,在需求变化更多的情况下变得更加敏捷。
一下是一个该技术的更加具体的例子:
当一个测试人员在虚拟机环境下测试并找到一个软件瑕疵的时候,只用一个简单的点击就可以把整个环境的镜像点(多个虚拟机)记录下来。他可以把这个镜像点的链接,只有几个字节,作为附件自动内嵌在软件瑕疵报告中,同时可以选择包含更多的信息,比如带时间坐标的视频,操作记录,历史调试记录以及更多信息。
开发人员得到这个软件瑕疵报告之后,他能够从集成开发环境(IDE)里打开它,并且找到与这个瑕疵在该镜像点上所有相关的丰富信息。头一次,开发人员不需要询问测试者他/她到底做了什么以及重新设置瑕疵重现的环境。
他们可以简单地双击链接,得到一个简单的实验室环境视图,其中可以包括多个虚拟机环境,他可以用一次点击就可以恢复所需的整个环境状态。然后,他就拥有了整个环境,包括历史环境下的调试工具,来回卷他们的代码,找到导致软件瑕疵的事件发生的顺序,或者程序的流程,而所有这些工具都包含在VSTS 2010中。
正如你所想象的,实验室管理能够最大程度的提升开发人员- 测试人员的工作流,并且帮助整个开发流程变得更加有效率。
【编辑推荐】