测试类型和如何管理测试类型
介绍
准备进行软件开发的公司经常面临的问题是:在他们的项目中使用哪个工具更好。表面上看来这是一个简单而且很有意思的任务,只要去购买那些可以提高他们生产力,而且最新最酷的软件就可以了。
然而,比起上网挑选自己喜爱的软件更具有难度的是,如何知道这些软件能否与项目中使用的其它工具很好的配合。
一个实例
举个例子,一个源代码控制系统(正如最近大家了解的配置管理系统)。这个工具是否与您的测试工具、需求管理系统、问题记录数据库、工作组件记录引擎很好的配合?它是否还集成了提供关于运行结果、代码错误等详细数据的报告系统?这些都是有价值的报告,如果您的工具不能很好的互相配合工作,那么以上内容都是不能实现的。
许多公司在面临这个问题时候的做法是自己进行开发,来强制必要的集成。问题是,开发者对之后要用在整个开发项目上的工具的建立过程,几乎成了一个新的开发项目。
Visual Studio Team System
Microsoft Visual Studio Team System (VSTS)的到来,回答了这样一个问题:我们应该使用哪个工具?它也帮助解决了工具集成的问题。VSTS通过提供源代码控制、工作组件追踪、测试工具、开发工具和架构工具来实现这些。它们都被设计成在一个团队中协同工作。而且,Team System向第三方工具开发者开放了基础架构,允许它们很容易的集成到现有的架构中去。最明显的结果是,一组工具可以无缝的进行集成使用,并带有显示细节的报告,就像前面提到的一样。
关于这篇文章
虽然我们很想告诉您关于VSTS有多么优秀的很多细节,但是由于空间有限,我们只能告诉您这个产品的一部分内容。我们选择了告诉您关于测试类型的内容,以及当您要使用测试的时候,如何管理即将生成的大量测试。
应该注意的是,虽然我们将注意力集中到了网络和负载测试类型上,但是VSTS中还包含了其它很多的测试类型(甚至包含很多第三方建立的测试类型)。
网络和负载测试的需要
下面是使用的场景:您建立了一个很完美的新站点。源代码是您写过的最好的,美工也是经过精心设计的,而且网页的内容也能够使浏览者赶到满意。您的网页像您想象的一样即将获得成功。但是,当您的网络访问量增大时,带宽问题出现了。更坏的是,整个问题发生在您所预料的高峰时间出现之前。在您找到问题的原因并且重新部署您的站点之前,很多人就已经因为痛苦的体验而决定不再访问您的站点,这对于您来说是一个大灾难。
花一些时间建立测试,试用您的站点并且模拟用户负载,可以避免这些问题。更好的是,建立测试并不需要您花费很大力气。
网络测试类型
VSTS中的网络测试类型允许您记录与您站点进行的交互操作。首先您需要建立Visual Studio中的一个新的项目类型,被称做测试项目,然后增加一个网络测试。当网络测试被加入到您的项目中时,会运行一个IE浏览器的实例,以允许您开始记录您的行为。
在IE浏览器中,窗口左边会出现一个窗格。这个窗格记录您所有的上网过程,包括链接和复杂表单的提交等,如图1所示。一旦您完成了与站点的交互操作并且触碰了站点中需要测试的区域,您可以保存结果并返回Visual Studio,在这里您可以查看交互操作的结果。
图 1 网络测试窗格
在Visual Studio中保存了您的结果后,您可以一步步的浏览您记录的网络测试,设置检查点,检查您的站点是否与期待的行为一样,也可以将您的测试与一个数据库绑定,以便对网页表单的输入进行参数化。最重要的是,您也可以将您记录的网络测试转换成源代码,例如Visual Basic、C++或者C#。
网络测试被包含在您的其它测试类型中。它可以成为您建立的任何测试的一部分,或者与其它测试类型一起使用。
负载测试类型
负载测试类型是一个比较特殊的测试类型,没有任何的源代码与它相关联。它是其它测试的一个容器。举个例子,您想对一个应用程序进行几个单元的压力测试,您可以建立一个负载测试,然后选择任意一个您编写的测试类型,包括网络测试。
建立一个负载测试和建立Visual Studio Team System中的其它测试是一样的。您可以找到Test菜单,然后选择Create New Test,或者您可以在一个Test项目上点击右键,然后选择Add New Test。在从众多的测试列表中选择了负载测试后,负载测试向导会引导您完成对测试的配置,如图2所示。在这个向导中,选择了一个或多个网络测试,并且设置了这些测试的分布式运行。而且这个向导允许测试建立者选择在测试运行过程中模拟哪个浏览器和带宽。也可以在这里指定在测试运行期间查看哪个机器(例如,数据库服务器、Web服务器或者其它任何您想获取状态的计算机)。最后,这个向导提供了一个方法去控制如何进行逐步的测试(整个测试包含1000个模拟用户或者在特定时间后逐步增加用户数量),或者整体的测试。
图 2 。负载测试向导
当测试开始后,在测试结果窗口中会显示出测试的进程,测试不需要人为干预直到结束。更有意思的是,窗口还会显示出测试细节以便负载测试可以被实时观察到,如图3所示。
从这个界面中可以观察到之前指定的计算机的任何不正常情况。默认情况下显示常用计数器,但是用户可以选择其它统计参数,并且把它们放在实时图表中。
图 3 。负载测试细节
如果发现了问题,测试人员可以建立一个错误记录,并将它随同测试结果和自动生成的问题报告一起发送给开发人员。当开发人员浏览了错误记录并且打开了附加的测试结果后,他可以准确的看到测试人员在运行测试时看到的内容。
测试管理
在大部分项目的生命周期过程中,测试团队总是使用了大量的测试案例。在一些团队中,多样化的测试案例类型被不同角色和不同位置的团队成员所共享。管理测试案例会变得复杂而且耗时。
测试管理器窗口便是用来改进组织和使用大量测试案例的。测试管理器显示Microsoft Visual Studio Team Edition for Software Testers中的所有测试案例。如图4所示,您只要从测试列表中选择一项内容,便可以选中一组测试案例。
图 4 。选择要运行的测试
测试管理器窗口中的其它元素包括:
-
任务:通过单击这些快捷方式您可以完成常用任务。
-
分组:这个特性允许您将列在窗口左侧中的测试案例按照任何一种测试案例的属性进行分类
-
信息头:显示当前选择执行的测试案例的总体数量。
测试列表
每个分类后的测试列表可以很容易作为一个单一内容进行管理。测试列表具有下列特性:
-
测试可以存在于多个列表中。
-
测试列表中不能进行排序。
-
测试列表可以包含其它的测试列表,这样可以显示出层次结构。
定义一个测试列表
要想定义一个测试列表,在测试管理器树中您想建立新列表的位置点击右键。举个例子,要想建立一个根一级的测试列表,您可以在List of Tests节点上点击右键,然后选择Create Test List。结果如图5中的对话框所示。
图 5 。建立一个新的测试列表
现在只需要填写Name和Description框,点击OK,就可以得到一个新的测试列表。要想向列表中添加测试,只要在存在的测试列表中选择一个或者从测试管理器的其它结点中拖拽、复制或者将其它测试剪切到新的测试列表中。
结论
网络和负载测试为您提供了强大的工具,使得不需要写任何代码就可以测试任一站点。负载测试可以与其它任何一种类型的测试一起使用,用来建立任何压力测试。
除了帮助您写出各种各样的测试类型,Microsoft Visual Studio Team Edition for Software Testers可以帮助您管理您的测试案例。测试管理器允许您使用测试列表,通过快速简单的方法,控制并且组织好大量测试案例。
Microsoft Visual Studio Team Edition for Software Testers中包含的我们没有提到的额外特性包括远程(分布式)执行,测试结果管理及其它测试类型,包括手动测试和顺序测试。
Microsoft Visual Studio Team Edition for Software Testers是一个与Test System产品家族集成的优秀的测试工具。利用Microsoft Visual Studio Team Edition for Software Testers,测试团队可以为您提供产品开发项目整体软件健康图中最关键的一部分。

浙公网安备 33010602011771号