加强虚拟化技术 克服试验环境的局限性 |
发布时间: 2012/6/16 19:07:06 |
虚拟化技术在软件测试工作中的应用,一方面可以消除测试环境中物理服务器的限制,另一方面能够共享IT人员之间的资源,从而简化测试工作。
弗雷斯特研究公司高级分析师Carey Schwaber说:“测试环境使用虚拟化技术面临的问题是镜像(image)数量激增,针对不同操作系统测试多种配置时更是如此。因此一定要严格控制测试环境,并制订政策来防止测试环境过于庞大或者闲置而浪费系统资源。” 避免测试服务器散乱 系统工程师Tim Antonowicz和他的团队,借助虚拟化技术的帮助,不需要通过新的操作系统或者使用另外的软件对开发人员的工作站进行集群就能测试软件,整个团队曾经在55个测试阶段中使用“沙箱”运行。 Antonowicz说:“沙箱是基本的虚拟机,我们在里面测试及评估各种软件。如果我们希望尝试新功能、运行测试版软件,或者仅仅实践某种新想法,就会构建一台沙箱虚拟机。” 像Antonowicz这样使用虚拟化技术(作为用于测试的工具)的情况很常见,但是大多数IT部门还没有在整个企业内统一把虚拟化技术用于测试。到头来,常常是不同的IT小组运行各自的虚拟服务器,它们之间并不能得到适当的管理。业内人士认为,由于这种不一致性,对于开发者而言,可能根本无法完全获得虚拟化带来的好处。 IDC公司的首席分析师Melinda Ballou说:“测试时确保一致性很重要,IT部门要有全面的管理方法来确保物理机器和虚拟资源之间的协调性。” 为了帮助IT管理人员控制测试资源,虚拟化测试管理软件厂商们一直在推出相关产品。它们的产品直接针对使用虚拟服务器工具迅速构建及拆除测试环境的企业。这些产品具有自动化功能,可以跟踪虚拟机、捕获配置数据,并保存在数据库中供将来使用。有的可以让IT管理人员构建软件测试基础架构,从而自动构建及卸载多个虚拟机环境。有的则通过整合测试基础架构,根据需要自动构建及卸载复杂的测试环境,帮助企业的IT管理人员加快测试过程。 Sisters of Mercy Healthcare是美国圣路斯的教会医疗机构,它的IT员工发现如果升级整个机构内24000个桌面以便更新工作站,所需要耗费的人力资源巨大,还可能达不到预期效果。客户工程部经理Brian Boresi说: “我们之前的桌面更新周期要求企业里面所有计算机升级到同样的操作系统、同样的安全策略。但是我们有多个环境需要更新升级。在24000个桌面上进行升级需要耗费大量的人力和时间,而且必须遵守非常紧凑的部署时间表,这会让工作人员吃不消。” 同时Boresi认识到,虚拟化技术是面对如此艰巨任务的惟一实际选择,他表示因此需要为管理好测试虚拟环境提供帮助。在实际工作中,由于使用了一款比较优秀的虚拟化测试试验室管理产品,让Boresi和他的团队能够在测试实验室自动创建多种配置,只要根据用户的工作站环境来更改某些配置即可,而不必派一名IT员工跑到每个桌面用户那里以去确定应用需求。 克服虚拟试验环境局限性 不过有些人认为,虚拟测试实验室管理工具不足以阻止测试环境失去控制。IT部门还需要确定哪些内容可以通过虚拟机来进行测试,以确保虚拟机上测试的任何东西在投入到生产环境之前,在物理机器上仍旧可以通过测试运行。考虑到这一点,Sisters of Mercy Healthcare使用虚拟环境用于测试阶段当中的一个阶段,在产品投入到生产前仍旧会在物理服务器上完成一部分测试工作。 “我们把产品投入到生产环境之前,把应用包部署到试运行阶段的生产工作站。这样可以确保软件满足所有要求,以避免某个物理机器特有的障碍。”Boresi说。 芝加哥Cars.com的技术运营主管Edward Christensen说,他尽量避免在虚拟机测试环境下进行负载或者性能测试。 “我们限制虚拟化技术只用于功能和集成测试。除非你的生产环境也实现了虚拟化,否则最好不用于性能测试。” 有一些专家也认为,不适合在虚拟测试实验室进行性能测试,比如应用负载和可用性测试。Schwaber说:“你不能通过增加并发用户的数量来测试某些应用在负载状态(比如1万个并发用户)下运行的流畅度。虚拟机与物理机器共享部分资源,不管共享资源多么少,都会导致这种性能测试不准确。” 扬基集团高级分析师Gary Chen说,他鼓励用户采用虚拟化技术用于测试环境,因为如果这么做,工作就会大大简化,可以花更少的钱进行更多的测试。但是他也警告IT专业人士不要轻信虚拟化技术,“谁也不该完全依靠虚拟环境进行测试,物理环境测试仍必不可少。”
本文出自:亿恩科技【www.enkj.com】 |