-
测试工具的分类与选择(zz)
2007-07-25 13:48:55
测试工具的分类和选择
一般而言,我们将测试工具分为白盒测试工具、黑盒测试工具、性能测试工具、测试管理工具几个大类。
a) 白盒测试工具
白盒测试工具一般是针对代码进行测试,测试中发现的缺陷可以定位到代码级,根据测试工具原理的不同,又可以分为静态测试工具和动态测试工具。
i. 静态测试工具
静态测试工具直接对代码进行分析,不需要运行代码,也不需要对代码编译链接,生成可执行文件。静态测试工具一般是对代码进行语法扫描,找出不符合编码规范的地方,根据某种质量模型评价代码的质量,生成系统的调用关系图等。
静态测试工具的代表有Telelogic公司的Logiscope软件、PR公司的PRQA软件。
ii. 动态测试工具
动态测试工具与静态测试工具不同,动态测试工具的一般采用“插桩”的方式,向代码生成的可执行文件中插入一些监测代码,用来统计程序运行时的数据。其与静态测试工具最大的不同就是动态测试工具要求被测系统实际运行。
动态测试工具的代表有Compuware公司的DevPartner软件、Rational公司的Purify系列。
b) 黑盒测试工具
黑盒测试工具适用于黑盒测试的场合,黑盒测试工具包括功能测试工具和性能测试工具。黑盒测试工具的一般原理是利用脚本的录制(Record)/回放(Playback),模拟用户的操作,然后将被测系统的输出记录下来同预先给定的标准结果比较。黑盒测试工具可以大大减轻黑盒测试的工作量,在迭代开发的过程中,能够很好地进行回归测试。
黑盒测试工具的代表有Rational公司的TeamTest、Robot,Compuware公司的QACenter,另外,专用于性能测试的工具包括有Radview公司的WebLoad、Microsoft公司的WebStress等工具。
c) 测试管理工具
测试管理工具用于对测试进行管理。一般而言,测试管理工具对测试计划、测试用例、测试实施进行管理,并且,测试管理工具还包括对缺陷的跟踪管理。
测试管理工具的代表有Rational公司的Test Manager、Compureware公司的TrackRecord等软件。
d) 其他测试工具
除了上述的测试工具外,还有一些专用的测试工具,例如,针对数据库测试的TestBytes,对应用性能进行优化的EcoScope等工具。
e) 测试工具的选择
面对如此多的测试工具,对工具的选择就成了一个比较重要的问题。我们在考虑选用工具的时候,建议从以下几个方面来权衡和选择:
i. 功能
功能当然是我们最关注的内容,选择一个测试工具首先就是看它提供的功能。当然,这并不是说测试工具提供的功能越多就约好,在实际的选择过程中,适用才是根本。“钱要花在刀刃上”,为不需要的功能花费金钱实在不是明智的行为。事实上,目前市面上同类的软件测试工具之间的基本功能都是大同小异,各种软件提供的功能也大致相同,只不过有不同的侧重点。例如,同为白盒测试工具的Logiscope和PRQA软件,他们提供的基本功能大致相同,只是在编码规则、编码规则的定制、采用的代码质量标准方面有不同。
除了基本的功能之外,以下的功能需求也可以作为选择测试工具的参考:
1) 报表功能;测试工具生成的结果最终要由人进行解释,而且,查看最终报告的人员不一定对测试很熟悉,因此,测试工具能否生成结果报表,能够以什么形势提供报表是需要考虑的因素。
2) 测试工具的集成能力;测试工具的引入是一个长期的过程,应该是伴随着测试过程改进而进行的一个持续的过程。因此,测试工具的集成能力也是必须考虑的因素,这里的集成包括两个方面的意思,首先,测试工具能否和开发工具进行良好的集成;其次,测试工具能够和其他测试工具进行良好的集成。
3) 操作系统和开发工具的兼容性;测试工具可否跨平台,是否适用于公司目前使用的开发工具,这些问题也是在选择一个测试工具时必须考虑的问题。
ii. 价格
除了功能之外,价格就应该是最重要的因素了。说句题外话,在论坛上经常看到有人沾沾自喜的说我已经破解了XX测试工具这样的话,对这种态度我十分不赞成。如果作为软件从业者的我们都不能尊重别人的劳动,那有怎么能够指望我们的客户尊重我们的劳动呢?况且,测试工具的价格并不是真的昂贵到不能承受的程度,例如Numega的DevPartner一个固定license是两万多元人民币,对一个中型的公司来说完全可以承受。
iii. 测试工具引入的目的是测试自动化,引入工具需要考虑工具引入的连续性和一致性
测试工具是测试自动化的一个重要步骤之一,在引入/选择测试工具时,必须考虑测试工具引入的连续性。也就是说,对测试工具的选择必须有一个全盘的考虑,分阶段、逐步的引入测试工具。
3、 测试工具在测试过程中的应用
前面已经对测试工具的分类、测试工具的选择进行了一些描述,这里,我还想就测试工具在测试过程中的应用说一点自己的看法。
对测试工具能够发挥的作用大家都已经了解并认可了,但是很多引入测试软件的公司并没有能够让测试软件发挥应有的作用,其主要原因我总结为三个方面:
a) 没有考虑到公司的实际情况,盲目引入测试工具
首先我们要明确一点,并不是每种测试工具都适合公司目前的实际情况。我见过一些公司怀着美好的愿望花了不小的代价引入测试工具,半年一年以后,测试工具却成了摆设,成了引入者心头的痛。究其原因,就是没有能够考虑公司的现实情况,不切实际地期望测试工具能够改变公司的现状,从而导致了失败。
例如,如果一个公司所开发的软件属于工程性质的软件,在整个开发过程中需求和用户界面变动较大,这种情况下就不适合引入黑盒测试软件,因为黑盒测试软件的基本原理是录制/回放,对于不停变化的需求和界面,可能修改和录制脚本的工作量还大过测试实施,运用测试工具不但不能减轻工作量,反而加重了测试人员的负担。
我公司引入测试工具时比较成功的(至少从目前来看),针对我公司的应用项目都存在需求、界面变动比较频繁的情况,我们暂时没有引入黑盒测试工具,主要依靠白盒测试工具提升代码质量。目前我们引入的测试工具包括Compuware的DevPartner和Telelogic的Logiscope,这两个工具在测试阶段和维护阶测试
b) 没有形成一个良好的使用测试工具的环境
换句话说,就是没有能够形成一种机制让测试工具真正能够发挥作用。例如,白盒测试工具的一般使用场合是在单元测试阶段,而单元测试是由开发人员完成,如果没有流程来规范开发人员的行为,在项目进度压力比较大的情况下,开发人员很可能就会有意识地不使用测试工具,来逃避问题。在这种情况下,就必须形成一种有约束力的机制来强制对测试工具的使用。
将测试工具的使用明确定义进公司的开发流程,我认为是一种比较好的方式。我们目前的做法是在开发流程中明确说明,在项目里程碑提交的文档中必须包括测试工具生成的报告,该报告中的数据是决定项目是否合格的依据。根据我公司的实际情况,在提交集成测试时需要提交DevPartner工具生成的测试覆盖率报告、Logiscope生成的代码质量报告,并且要求单元测试的代码覆盖率必须达到80%以上,代码质量评价必须在Fair以上。
c) 没有进行有效的测试工具的培训
测试工具的使用者必须对测试工具非常了解,在这方面,有效的培训是必不可少的。测试工具的培训是一个长期的过程,不是通过一两次讲课的形式就能达到良好的效果。而且,在实际的使用测试工具的过程中,测试工具的使用者可能还存在着这样那样的问题,这也需要有专人负责解决,否则的话,对于测试工具使用者的积极性是很大的打击。 -
MI测试工具介绍(zz)
2007-07-25 13:45:18
WinRunner:强大的企业级自动化测试工具Mercury Interactive公司的WinRunner是一种企业级的功能测试工具,用于检测应用程序是否能够达到预期的功能及正常运行。通过自动录制、检测和回放用户的应用操作,WinRunner能够有效地帮助测试人员对复杂的企业级应用的不同发布版进行测试,提高测试人员的工作效率和质量,确保跨平台的、复杂的企业级应用无故障发布及长期稳定运行。
企业级应用可能包括Web应用系统,ERP系统,CRM系统等等。这些系统在发布之前,升级之后都要经过测试,确保所有功能都能正常运行,没有任何错误。如何有效地测试不断升级更新且不同环境的应用系统,是每个公司都会面临的问题。
如果时间或资源有限,这个问题会更加棘手。人工测试的工作量太大,还要额外的时间来培训新的测试人员等等。为了确保那些复杂的企业级应用在不同环境下都能正常可靠地运行,你需要一个能简单操作的测试工具来自动完成应用程序的功能性测试。
轻松创建测试
用WinRuuner创建一个测试,只需点击鼠标和键盘,完成一个标准的业务操作流程,WinRunner自动记录你的操作并生成所需的脚本代码。这样,即使计算机技术知识有限的业务用户轻松创建完整的测试。你还可以直接修改测试脚本以满足各种复杂测试的需求。WinRunner提供这两种测试创建方式,满足测试团队中业务用户和专业技术人员的不同需求。
插入检查点
在记录一个测试的过程中,可以插入检查点,检查在某个时刻/状态下,应用程序是否运行正常。在插入检查点后,WinRunner会收集一套数据指标,在测试运行时对其一一验证。WinRunner提供几种不同类型的检查点,包括文本的、GUI、位图和数据库。例如,用一个位图检查点,你可以检查公司的图标是否出现于指定位置。
检验数据
除了创建并运行测试,WinRunner还能验证数据库的数值,从而确保业务交易的准确性。例如,在创建测试时,可以设定哪些数据库表和记录需要检测;在测试运行时,测试程序就会自动核对数据库内的实际数值和预期的数值。WinRunner自动显示检测结果,在有更新/删除/插入的记录上突出显示以引起注意。
增强测试
为了彻底全面地测试一个应用程序,需要使用不同类型的数据来测试。WinRunner的数据驱动向导( Data Driver Wizard)可以让你简单地点击几下鼠标,就可以把一个业务流程测试转化为数据驱动测试,从而反映多个用户各自独特且真实的行为。
以一个订单输入的流程为例,你可能希望把订单号或客户名称作为可变栏,用多套数据进行测试。使用Data Driver Wizard,你可以选择订单号或客户名称用数据表格文件中的哪个栏目的数据替换。你可以把订单号或客户名称输入数据表格文件,或从其它表格和数据库中导入。数据驱动测试不仅节省了时间和资源,又提高了应用的测试覆盖率。
WinRunner还可以通过Function Generator增加测试的功能。使用Function Generator可以从目录列表中选择一个功能增加到你的测试中以提高测试能力。例如,你可以选择”calendar”,然后从日历功能的下属目录中选择,如Calendar_select_date(),然后你可以直观地输入参数,把这个功能插入到你的测试中。
针对相当数量的企业应用里非标准对象,WinRunner提供了Virtual Object Wizard来识别以前未知的对象。使用Virtual Object Wizard,你可以选择未知对象的类型,设定标识和命名。在录制使用该对象的测试时,WinRunner会自动对应它的名字,从而提高测试脚本的可读性和测试质量。
运行测试
创建好测试脚本,并插入检查点和必要的添加功能后,你就可以开始运行测试。运行测试时,WinRunner会自动操作应用程序,就象一个真实的用户根据业务流程执行着每一步的操作。测试运行过程中,如有网络消息窗口出现或其它意外事件出现,WinRunner也会根据预先的设定排除这些干扰。
分析结果
测试运行结束后,你需要分析测试结果。WinRunner通过交互式的报告工具来提供详尽的、易读的报告。报告中会列出测试中发现的错误内容、位置、检查点和其它重要事件,帮助你对测试结果进行分析。这些测试结果还可以通过Mercury Interactive的测试管理工具TestDirector来查阅。
维护测试
随着时间的推移,开发人员会对应用程序做进一步的修改,并需要增加另外的测试。使用WinRunner,你不必对程序的每一次改动都重新创建你的测试。WinRunner可以创建在整个应用程序生命周期内都可以重复使用的测试,从而大大地节省时间和资源,充分利用你的测试投资。
每次记录测试时,WinRunner会自动创建一个GUI Map文件以保存应用对象。这些对象分层次组织,既可以总览所有的对象,也可以查询某个对象的详细信息。一般而言,对应用程序的任何改动都会影响到成百上千个测试。通过修改一个GUI Map文件而非无数个测试,WinRunner可以方便地实现测试重用。
帮助你的应用程序为无线应用作准备
随着无线设备种类和数量的增加,你的应用程序测试计划需要同时满足传统的基于浏览器的用户和无线浏览设备,如移动电话、传呼机和个人数字助理(PDA)。
无线应用协议是一种公开的、全球性的网络协议,用来支持标准数据格式化和无线设备信号的传输。
使用WinRunner,测试人员可以利用微型浏览模拟器来记录业务流程操作,然后回放和检查这些业务流程功能的正确性。
工业标准级负载测试工具LoadRunner? 是一种预测系统行为和性能的负载测试工具。通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner 能够对整个企业架构进行测试。通过使用LoadRunner ,企业能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。
目前企业的网络应用环境都必须支持大量用户,网络体系架构中含各类应用环境且由不同供应商提供软件和硬件产品。难以预知的用户负载和愈来愈复杂的应用环境使公司时时担心会发生用户响应速度过慢,系统崩溃等问题。这些都不可避免地导致公司收益的损失。Mercury Interactive 的 LoadRunner 能让企业保护自己的收入来源,无需购置额外硬件而最大限度地利用现有的IT 资源,并确保终端用户在应用系统的各个环节中对其测试应用的质量,可靠性和可扩展性都有良好的评价。
LoadRunner 是一种适用于各种体系架构的自动负载测试工具,它能预测系统行为并优化系统性能。LoadRunner 的测试对象是整个企业的系统,它通过模拟实际用户的操作行为和实行实时性能监测,来帮助您更快的查找和发现问题。此外,LoadRunner 能支持广范的协议和技术,为您的特殊环境提供特殊的解决方案。
轻松创建虚拟用户
使用LoadRunner 的Virtual User Generator,您能很简便地创立起系统负载。该引擎能够生成虚拟用户,以虚拟用户的方式模拟真实用户的业务操作行为。它先记录下业务流程(如下订单或机票预定),然后将其转化为测试脚本。利用虚拟用户,您可以在Windows ,UNIX 或Linux 机器上同时产生成千上万个用户访问。所以LoadRunner能极大的减少负载测试所需的硬件和人力资源。另外,LoadRunner 的TurboLoad 专利技术能。
提供很高的适应性。TurboLoad 使您可以产生每天几十万名在线用户和数以百万计的点击数的负载。
用Virtual User Generator 建立测试脚本后,您可以对其进行参数化操作,这一操作能让您利用几套不同的实际发生数据来测试您的应用程序,从而反映出本系统的负载能力。以一个订单输入过程为例,参数化操作可将记录中的固定数据,如订单号和客户名称,由可变值来代替。在这些变量内随意输入可能的订单号和客户名,来匹配多个实际用户的操作行为。
LoadRunner 通过它的Data Wizard 来自动实现其测试数据的参数化。Data Wizard 直接连于数据库服务器,从中您可以获取所需的数据(如定单号和用户名)并直接将其输入到测试脚本。这样避免了人工处理数据的需要,Data Wizard 为您节省了大量的时间。
为了进一步确定您的Virtual user 能够模拟真实用户,您可利用LoadRunner 控制某些行为特性。例如,只需要点击一下鼠标,您就能轻易控制交易的数量,交易频率,用户的思考时间和连接速度等。
创建真实的负载
Virtual users 建立起后,您需要设定您的负载方案,业务流程组合和虚拟用户数量。用LoadRunner 的Controller,您能很快组织起多用户的测试方案。Controller 的Rendezvous 功能提供一个互动的环境,在其中您既能建立起持续且循环的负载,又能管理和驱动负载测试方案。
而且,您可以利用它的日程计划服务来定义用户在什么时候访问系统以产生负载。这样,您就能将测试过程自动化。同样您还可以用Controller 来限定您的负载方案,在这个方案中所有的用户同时执行一个动作---如登陆到一个库存应用程序----来模拟峰值负载的情况。另外,您还能监测系统架构中各个组件的性能---- 包括服务器,数据库,网络设备等----来帮助客户决定系统的配置。
LoadRunner 通过它的AutoLoad 技术,为您提供更多的测试灵活性。使用AutoLoad ,您可以根据目前的用户人数事先设定测试目标,优化测试流程。例如,您的目标可以是确定您的应用系统承受的每秒点击数或每秒的交易量。
定位性能问题
LoadRunner 内含集成的实时监测器,在负载测试过程的任何时候,您都可以观察到应用系统的运行性能。这些性能监测器为您实时显示交易性能数据(如响应时间)和其它系统组件包括application server, web server,网路设备和数据库等的实时性能。这样,您就可以在测试过程中从客户和服务器的双方面评估这些系统组件的运行性能,从而更快地发现问题。
再者,利用LoadRunner 的ContentCheck TM ,您可以判断负载下的应用程序功能正常与否。ContentCheck 在Virtual users 运行时,检测应用程序的网络数据包内容,从中确定是否有错误内容传送出去。它的实时浏览器帮助您从终端用户角度观察程序性能状况。
分析结果以精确定位问题所在
一旦测试完毕后,LoadRunner 收集汇总所有的测试数据,并为您提供高级的分析和报告工具,以便迅速查找到性能问题并追溯原由。使用LoadRunner 的Web 交易细节监测器,您可以了解到将所有的图象、框架和文本下载到每一网页上所需的时间。例如,这个交易细节分析机制能
够分析是否因为一个大尺寸的图形文件或是第三方的数据组件造成应用系统运行速度减慢。另外,Web 交易细节监测器分解用于客户端、网络和服务器上端到端的反应时间,便于确认问题,定位查找真正出错的组件。例如,您可以将网络延时进行分解,以判断DNS 解析时间,连接服务器或SSL 认证所花费的时间。通过使用LoadRunner 的分析工具,您能很快地查找到出错的位置和原因并作出相应的调整。
重复测试保证系统发布的高性能
负载测试是一个重复过程。每次处理完一个出错情况,您都需要对您的应用程序在相同的方案下,再进行一次负载测试。以此检验您所做的修正是否改善了运行性能。
Enterprise Java Beans的测试
LoadRunner 完全支持EJB 的负载测试。这些基于Java 的组件运行在应用服务器上,提供广泛的应用服务。通过测试这些组件,您可以在应用程序开发的早期就确认并解决可能产生的问题。
利用LoadRunner, 您可以很方便地了解系统的性能。 它的Controller 允许您重复执行与出错修改前相同的测试方案。它的基于HTML 的报告为您提供一个比较性能结果所需的基准,以此衡量在一段时间内,有多大程度的改进并确保应用成功。由于这些报告是基于HTML 的文本,您可以将其公布于您公司的内部网上,便于随时查阅。
最大化投资回报
所有Mercury Interactive 的产品和服务都是集成设计的, 能完全相容地一起运作。由于它们具有相同的核心技术,来自于LoadRunner和ActiveTest TM 的测试脚本,在Mercury Interactive 的负载测试服务项目中,可以被重复用于性能监测。借助Mercury Interactive的监测功能--Topaz TM 和ActiveWatch TM ,测试脚本可重复使用从而平衡投资收益。更重要的是,您能为测试的前期布署和生产系统的监测提供一个完整的应用性能管理解决方案。
支持无线应用协议
随着无线设备数量和种类的增多,您的测试计划需要同时满足传统的基于浏览器的用户和无线互联网设备,如手机和PDA。LoadRunner 支持2 项最广泛使用的协议:WAP和I-mode。此外,通过负载测试系统整体架构,LoadRunner 能让您只需要通过记录一次脚本,就可完全检测上述这些无线互联网系统。
支持Media Stream应用
LoadRunner 还能支持Media Stream应用。为了保证终端用户得到良好的操作体验和高质量Media Stream,您需要检测您的Media Stream应用程序。使用LoadRunner ,您可以记录和重放任何流行的多媒体数据流格式来诊断系统的性能问题,查找原由,分析数据的质量。
完整的企业应用环境的支持
LoadRunner 支持广泛的协议,可以测试各种IT 基础架构。
全球测试管理系统TestDirector ? 是业界第一个基于Web的测试管理系统,它可以在您公司内部或外部进行全球范围内测试的管理。通过在一个整体的应用系统中集成了测试管理的各个部分,包括需求管理,测试计划,测试执行以及错误跟踪等功能,TestDirector极大地加速了测试过程。
电子商务正影响着许多公司制定计划和建立自己的IT系统。很快,一个Web应用软件就能被创建,开发并立即展现在您的客户、供应商或合作伙伴的面前。然而,由于紧凑的开发计划和复杂的系统基构,Web应用软件的测试经常是被忽视的。为了与新经济同步, 您必须开发经过系统测试的高品质的网络应用软件。
您需要设立一个中央点来管理测试过程。一套基于Web的测试管理系统提供了一个协同合作的环境和一个中央数据仓库。由于测试人员分布在各地,您需要一个集中的测试管理系统能让测试人员不管在何时何地都能参与整个测试过程。IT部门增长地会非常快,人员也会不断流动。您必须以最快的速度培训新的测试人员,教会他们所有与测试有关的知识技术。重点在于管理复杂的开发和测试过程,改善部门间的沟通, 加速您测试的成功。
TestDirector能消除组织机构间、地域间的障碍。它能让测试人员、开发人员或其它的IT人员通过一个中央数据仓库,在不同地方就能交互测试信息。TestDirector将测试过程流水化——从测试需求管理,到测试计划,测试日程安排,测试执行到出错后的错误跟踪——仅在一个基于浏览器的应用中便可完成,而不需要每个客户端都安装一套客户端程序。
需求管理
程序的需求驱动整个测试过程。TestDirector 的Web 界面简化了这些需求管理过程,以此您可以验证应用软件的每一个特性或功能是否正常。通过提供一个比较直观的机制将需求和测试用例、测试结果和报告的错误联系起来,从而确保能达到最高的测试覆盖率。
一般有2 种方式可将需求和测试联系起来。其一,TestDirector 捕获并跟踪所有首次发生的的应用需求。您可以在这些需求基础上生成一份测试计划,并将测试计划(?)对应与您的需求。例如,您或许有25 个测试计划(?)可对应同一个应用需求。您一定能方便地管理需求和测试计划(?)之间可能存在的一种多配多的关系,确保每一个需求都经过测试。其二,由于Web 应用是不断更新和变化的,需求管理允许测试人员加减或修改需求,并确定目前的应用需求已拥有了一定的测试覆盖率。它们帮助决定一个应用软件的哪些部分需要测试,哪些测试需要开发,是否完成的应用软件满足了用户的要求。对于任何动态地改变Web 应用,必须审阅您的测试计划是否准确,确保其符合最当前的应用要求。
计划测试
测试计划的制定是测试过程中至关重要的环节。它为整个测试提供了一个结构框架。TestDirector的Test Plan Manager 在测试计划期尖,为测试小组提供一个关键要点和Web 界面来协调团队间的沟通。
Test Plan Manager 指导测试人员如何将应用需求转化为具体的测试计划。这种直观的结构能帮助您定义如何测试您的应用软件,从而您能组织起明确的任务和责任。Test Plan Manager提供了多种方式来建立完整的测试计划。您可以从草图上建立一份计划,或根据您用Require-ments Manager所定义下的应用需求,通过Test Plan Wizard 快捷地生成一份测试计划。如果您已经将计划信息以文字处理文件形式,如Microsoft Word 方式储存,您可以再利用这些信息,并将它导入到Test Plan Manager。它把各种类型的测试汇总在一个可折叠式目录树内,您可以在一个目录下查询到所有的测试计划(?)。例如,你可以将人工和自动测试,如功能性的,还原和负载测试方案结合在同一位置。
Test Plan Manager 还能进一步的帮助您完善测试设计和以文件形式描述每一个测试步骤,包括对每一项测试,用户反应的顺序,检查点和预期的结果TestDirector 还能为每一项测试连加附属文件,如Word ,Excel ,HTML ,用于更详尽的记录每次测试计划。
Web 网络应用日新月异,您的应用需求也随之不断改变。您需要相应地更新您的测试计划,优化测试内容。即使频繁的更新,TestDirector 仍能简单地将应用需求与相关的测试对应起来。TestDirector 还可支持不同的测试方式来适应您公司特殊的测试流程。
多数的测试项目需要一个有人工与自动测试的结合,包括健全,还原和系统测试。但即使符合自动测试要求的工具,在大部分情况下也需要人工的操作。启用一个演变性的而非革新性的自动化切换机制,能让测试人员决定哪些重复的人工测试可转变为自动脚本以提高测试速度。
TestDirector 还能简化将人工测试切换到自动测试脚本的转化,并可立即启动测试设计过程。
安排和执行测试
一旦测试计划建立后,TestDirector 的测试实验室管理为测试日程制订提供一个基于Web 的框架。它的Smart Scheduler根据测试计划中创立的指标对运行着的测试执行监控。
当网络上任何一台主机空闲,测试可以彻夜执行于其上。Smart Scheduler 能自动分辨是系统还是应用错误,然后将测试重新安排到网络上的其他机器。
对于不断改变的Web 应用,经常性的执行测试对于追查出错发生的环节和评估应用质量都是至关重要的。然而,这些测试的运行都要消耗测试资源和时间。使用Graphic Designer 图表设计,您可以很快地将测试分类以满足不同的测试目的,如功能性测试,负载测试,完整性测试等。它的拖动功能可简化设计和排列在多个机器上运行的测试,最终根据设定好的时间、路径或其它测试的成功与否,为序列测试制订执行日程。Smart Scheduler 能让您在更短的时间内,在更少的机器上完成更多的测试。
用WinRunner , Astra QuickTest ,Astra LoadTest 或LoadRunner 来自动运行功能性或负载测试,无论成功与否,测试信息都会被自动汇集传送到TestDirector 的数据储存中心。同样,人工测试也以此方式运行。
缺陷管理
当测试完成后,项目经理必须解读这些测试数据并将这些信息用于工作中。当有出错发现时,他们还要指定相关人员及时纠正。
TestDirector 的出错管理直接贯穿作用于测试的全过程,以提供管理系统终端-终端的出错跟踪—从最初的问题发现到修改错误再到检验修改结果。由于同一项目组中的成员经常分布于不同的地方,TestDirector 基于浏览器的特征,使出错管理能让多个用户何时何地都可通过Web 查询出错跟踪情况。利用出错管理,测试人员只需进入一个URL ,就可汇报和更新错误,过滤整理错误列表并作趋势分析。在进入一个出错案例前,测试人员还可自动执行一次错误数据库的搜寻,确定是否已有类似的案例记录。这一查寻功能可避免重复劳动。
图形化和报表输出
测试过程的最后一步是分析测试结果,确定应用软件是否已布属成功或需要再次的测试。
TestDirector 常规化的图表和报告和在测试的任一环节帮助您对数据信息进行分析。
TestDirector 还以标准的HTML 或Word 形式提供一种生成和发送正式测试报告的一种简单方式。测试分析数据还可简便地输入到一种工业标准化的报告工具,如Excel ,ReportSmith ,CrystalReports ,和其它类型的第三方工具。 -
常用测试工具介绍(zz)
2007-07-25 13:42:39
负载压力测试:
- LoadRunner 特点a,支持的协议多且个别协议支持的版本比较高;特点b,负载压力测试方案设置灵活;特点c,丰富的资源监控;特点d,报告可以导出到Word、Excel以及HTML格式。
- QALoad (1).测试接口多;(2)可预测系统性能;(3)通过重复测试寻找瓶颈问题;(4)从控制中心管理全局负载测试;(5)可验证应用的扩展性;(6)快速创建仿真的负载测试;(7)性能价格比较高。此外,QALoad不单单测试Web应用,还可以测试一些后台的东西,比如SQL Server等。只要它支持的协议,都可以测试。
- Benchmark Factory 首先它可以测试服务器群集的性能;其次,可以实施基准测试;最后,可以生成高级脚本。
- SilkPerformance:
- E-Test Suite 由Empirix公司开发的测试软件,能够和被测试应用软件无缝结合的Web应用测试工具。工具包含e-Tester、e-Load和e-Monitor,这三种工具分别对应功能测试、压力测试以及应用监控,每一部分功能相互独立,测试过程又可彼此协同。
- JMeter 是一个专门为运行和服务器负载测试而设计、100%的纯Java桌面运行程序。原先它是为Web/HTTP测试而设计的,但是它已经扩展以支持各种各样的测试模块。它和HTTP和SQL(使用JDBC)的模块一起运行。它可以用来测试静止或活动资料库中的服务器运行情况,可以用来模拟服务器或网络系统在重负载下的运行情况。它也提供了一个可替换的界面用来定制数据显示,测试同步及测试的创建和执行。
- WAS 是Micro$oft提供的免费的Web负载压力测试工具,应用广泛。WAS可以通过一台或者多台客户机模拟大量用户的活动。WAS支持身份验证、加密和Cookies,也能够模拟各种浏览器和Modem速度,它的功能和性能可以与数万美元的产品媲美。
- ACT 或称MSACT,它是微软的Visual Studio和Visual Studio.net带的一套进行程序压力测试的工具。ACT不但可以记录程序运行的详细数据参数,用图表显示程序运行情况,而且安装和使用都比较简单,结果阅读叶很方便,是一套较理想的测试工具。
- OpenSTA 它的全称是Open System Testing Architecture。OpenST的特点是可以模拟很多用户来访问需要测试的网站,它是一个功能强大、自定义设置功能完备的软件。但是,这些设置大部分需要通过scrīpt来完成,因此在真正使用这个软件之前,必须学习好它的scrīpt编写。如果需要完成很复杂的功能,scrīpt的要求还比较高。当然这也是它的优点,一些程序员不会在意编写scrīpt的。
- PureLoad 一个完全基于Java的测试工具,它的scrīpt代码完全使用XML。所以,编写scrīpt很简单。它的测试包含文字和图形并可以输出为HTML文件。由于是基于Java的软件,因此PureLoad可以通过Java Beans API来增强软件功能。
功能测试
- WinRunner 企业级的功能测试工具,用于检测应用程序是否能够达到预期的功能及正常运行,自动执行重复任务并优化测试工作,从而缩短测试时间。通过自动录制、检测和回防用户的应用操作,从而提高测试效率。
- QARun 一款自动回归测试工具,与Winrunner比较学习成本要低很多。不过要安装QARun必须安装.net环境,另外它还提供与TestTrack Pro的集成。
- Rational Robot 我经常使用的测试工具,属于Rational TestSuite中的一员,对于Visual studio 6编写的程序支持的非常好,同时还支持Java Applet、HTML、Oracle Forms、People Tools应用程序的支持。要支持Delphi程序的测试还必须下载插件。Rational Robot的语法使用Basic语法,它的语言使用SQABasic。
- Functional Tester 它是Robot的Java实现版本,在Rational被IBM收购后发布的。在Java的浪潮下,Robot被移植到了Eclipse平台,并完全支持Java和.net。可以使用VB.net和Java进行脚本的编写,当然了录下脚本让后做做修改是最爽的事情了。由于支持Java,那么对测试脚本进行测试也变成了可能。更多的信息请到IBM developerworks上查看,另外还提供试用版本下载。
白盒测试
- Logiscope
- PRQA
- Junit
- DevPartner
- Rational Purify
白盒测试工具就不多介绍了,因为网上这方面的资料特别多。
测试管理
- TestDirector MI的测试管理工具,可以与winrunner、Loadrunner、QuickTestPro进行集成。除了可以跟踪Bug外,还可以编写测试用例、管理测试进度等等,是测试管理的首选软件。
- TestManager Rational Testsuite中的一员,可以用来编写测试用例、生成Datapool、生成报表、管理缺陷以及日志等等。是一个企业级的强大测试管理工具。缺点是必须和其它组件一起使用,测试成本比较高。
- TrackRecord 一款擅长于Bug管理的工具,与TestDirecotr和Testmanager比较起来是很light的。不过至今还没有配成功过。:(
- Bugzilla 一个产品缺陷的记录及跟踪工具,它能够为你建立一个完善的Bug跟踪体系,包括报告、查询并产生报表、处理解决等几个部分。它的主要特点为:基于Web方式,安装简单;有利于缺陷的清楚传达;系统灵活,可配置性很强;自动发送Email。
- Jira 是一个Bug管理工具,自带一个Tomcat 4;同时有简单的工作流编辑,可用来定制流程;数据存储在HSQL数据引擎中,因此只要安装了JDK这个工具就可以使用。相比较Bugzilla来说有不少自身的特点,不过可惜它并不是开源工具,有Lisence限制。
测试辅助
- SmartDraw 用于绘制UCML,进行负载压力测试需求分析。对压力测试测试前的工作很有帮助。
- SDemo 我个人比较喜欢用这个工具,可以将操作录成EXE文件,并回放出来。这样就避免了那些偶尔才出现的Bug!
-
JIRA和TD的对比分析报告
2007-04-16 17:23:04
一、介绍
1. JIRA介绍
JIRA是集项目计划、任务分配、需求管理、错误跟踪于一体的商业软件。JIRA创建的问题类型包括New Feature、Bug、Task和Improvement四种,还可以自己定义,所以它也一是过程管理系统。Jira融合了项目管理、任务管理和缺陷管理,许多著名的开源项目都采用了JIRA。JIRA 是目前比较流行的基于Java架构的管理系统,由于Atlassian公司对很多开源项目实行免费提供缺陷跟踪服务,因此在开源领域,其认知度比其他的产品要高得多,而且易用性也好一些。同时,开源则是其另一特色,在用户购买其软件的同时,也就将源代码也购置进来,方便做二次开发。正因为其开放性,价格上自然也相当不菲,对于中小型的软件企业做项目管理,则又要另寻出路。
功能列表:
1. 问题追踪和管理(问题类型包括New Feature-新功能、Bug-缺陷、Task-任务、Improvement-改进四种),可自定义;
2. 问题跟进情况的分析报告;
3. 项目类别管理功能;
4. 组件/模块负责人功能;
5. 项目email地址功能;
6. 无限制的工作流;
7.子任务功能;
8.邮件通知功能;
9.CVS、SVN以及LDAP的集成功能;2. TD介绍
TestDirector 是业界第一个基于Web的测试管理系统,它可以在您公司组织内进行全球范围内测试的协调。通过在一个整体的应用系统中提供并且集成了测试需求管理、测试计划和用例管理、测试日程控制、测试执行和缺陷跟踪等功能,TestDirector 极大地加速测试过程。
功能列表:
1.域及工程管理;
2.用户管理;
3.工程进行定制(属性和列表、用户、用户组、版本、工作流、邮件通知等);
4.测试需求管理;
5.测试计划和用例管理;
6.测试日程控制;
7.测试执行和缺陷追踪。
8.强大的统计分析功能。二、JIRA的优缺点
1. JIRA的优点
用它管理项目,跟踪任务、bug,通过JIRA的邮件通知功能进行协作通知,在实际工作中使工作效率提高很多,效果非常不错!安全性、可扩展性方面发挥到了极致!
JIRA不仅仅是一个缺陷跟踪系统,通过Jira,可以整合客户、开发人员、测试人员,各人各司其职,信息很快得到交流和反馈,让大家感到软件开发在顺利快速的进行,朝意想的目标迈进。IDEA下的Jira插件,主要为开发人员服务,实时将信息反馈给开发人员,开发人员同时迅速地将修复的结果信息反馈到跟踪系统中,最后通过持续集成,软件迅速地完成了更新,这些方便便捷的操作会极大地鼓舞软件开发中的各方人员,甚至包括客户,及时响应,相信是每一个客户都会欣赏的。
跟同类软件产品TestTracker、ClearQuest、TestDirector相比,JIRA的性价比最好!因为TestTracker、ClearQuest、TestDirector等这几类软件都是根据用户数来定价的,而JIRA软件不限制用户数!不限制创建项目数和Issue的数量!一年内免费更新版本!2. JIRA的缺点
对于测试需求、测试用例等都没有提供直接的方式进行管理。四、TD的优缺点
1. TD的优点
TestDirector能消除组织机构间、地域间的障碍。它能让测试人员、开放人员或其它的IT人员通过一个中央数据仓库,在不同位置就能互通测试信息。TestDirector将测试过程流水作业—从测试需求管理,到测试计划,测试日程安排,测试执行以至到出错后的跟踪—仅在一个基于浏览器的应用中便可完成。
强大的统计分析功能:测试过程的最后一步是分析测试结果,确定应用程序是否已布属成功或需要再次的测试。TestDirector常规化的图表和报告和在测试的任一环节帮助您对数据信息进行分析。TestDirector还以标准的HTML或Word形式提供一种生成和发送正式测试报告的一种简单方式。测试分析数据还可简便地输入到一种工业标准化的报告工具,如Excel,ReportSmith, Crystal Reports,和其它类型的第三方工具。
2. TD的缺点
由于其早期版本不能灵活的对项目管理流程进行配置,又由于其昂贵的价格,因此目前应用的企业也不是很多。五、目前使用情况
1. JIRA的使用情况
国际化缺陷跟踪管理的专业软件:JIRA,它用于帮助公司和团队跟踪工作中的问题,管理和记录这些问题的处理过程。现在, JIRA已经被分布于37个国家的5500多个组织管理人员、开发人员、分析人员、测试人员和其他人员所广泛使用。2. TD的使用情况
在工业级软件项目领域,由于Mercury是测试软件领域的老大(比较有名的如LoadRunner、WinRunner等),因此它的TD也成为了缺陷跟踪系统的标杆产品。其也是最早通过Web方式来进行管理的缺陷跟踪软件,目 前也是被业界广泛使用的。六、对比分析和总结
-
选择JIRA的10大理由
2007-04-16 17:09:46
1. 在其他类似系统中找不到的特性
JIRA具有你在其他类似的问题跟踪系统中找不到的特性。
o 容易创建和保存的高可配置的能够过滤系统中所有问题的过滤器
o 同其他用户共享过滤器或订阅过滤器的过滤结果并定时通过邮件发送
o 动态问题连接功能允许您在项目间交叉连接问题,例如重复的问题和子问题
o 仪表板页面让用户可以立刻看到所有与他有关的信息
o 定制字段、Excel整合、项目概况、更改日志等等
最好的体验这些独特的特性方法是?立刻试用...
2. JIRA工作良好
我们相信生命是短暂的,不能让难以使用的、复杂并昂贵的企业软件来折磨自己
我们确信JIRA是目前最好,最简单的问题跟踪系统,所以成为我们的客户吧!
我们简单的、任务驱动的用户界面对于商务和技术人员来说,易于使用,学习容易。
3. 公平的、提前支付的许可策略
您不会发现任何关于“询问价格联系我们“的表单。我们相信我们的公平的、提前支付的许可策略。
JIRA的提前支付的许可策略让您提前知道您的费用。
在许可页面上可以了解到更多关于服务器许可、源代码访问、12个月免费升级、特色的支持等
这些都使JIRA引人注目。
4. 由世界上的公司检验
JIRA服务于成百上千的位于30个国家的组织。他们分布于财富1000、公众企业、理论与技术部门。
公司无论大小都已从JIRA的容易使用,简单但功能强大的问题跟种方法中受益。
5. 当需要的时候才提供您需要的信息
不同的用户以不同的方式使用JIRA:
管理人员需要更新项目状态。
测试人员需要快速提交问题的功能并尽量减少重复问题。
项目经理需要评估问题的严重级别并分配他们。
开发人员需要分析、更新、解决问题。6. 容易定制和扩展
JIRA可以通过多种方式被扩展--主要是:
监听器用于通过对在JIRA中产生的事件做出回应来驱动外部系统。
服务用于当需要从外部系统周期性的提交数据到JIRA系统中的情况 -- 例如通过发送邮件创建问题。
完整的JAVA应用程序接口允许您通过编写代码直接与JIRA连接,从而无限制的扩展JIRA。
7. 特色服务
我们的支持是有特色的,询问我们的客户即可知道。我们相信有特色的支持是有特色的产品的一部分,
我们所有的支持人员都有广泛的JIRA知识。
8. 与现有系统整合
除了监听器和服务程序能够提供与现有系统的双向的信息交换功能外,JIRA还有其他的整合特性:
JIRA是根据HTML规范开发,并在主要的浏览器上测试通过。
问题列表能够以浏览器、微软Excel、RSS/XML、全文等格式察看。
在JIRA中,每个页面都提供打印功能,可以很方便的打印。
JIRA同时支持文本和HTML格式的邮件。
9. JIRA可以运行在任何地方
无需花费太多的时间设置您的问题跟踪系统 -- JIRA可以在30秒内设置并运行与您的系统上。
JIRA能够运行在已有软、硬件平台上。他能够运行于所有的安装了JDK的操作系统上,并能够跟几乎所有的兼容JDBC的数据库一起使用。
10. 不断的改进
在不到两年的时间里,JIRA已经被开发成为简单易用并功能强大的问题跟踪系统。我们的许可策略包括12个月的免费升级,这样可以使您
买到的产品不是就是现在这样的,而是可以获取一年内的改进。 -
各类测试管理工具功能介绍
2007-04-16 17:07:43
2. TrackRecord(Business)
作为Compuware项目管理软件集成的一个重要组成部分,TrackRecord目前已经拥有众多的企业级用户,它基于传统的缺陷管理思想,整个缺陷处理流程完备,界面设计精细,并且对缺陷管理数据进行了初步的加工处理,提供了一定的图形表示。显著特点如下:1) 定义了信息条目类型(Item type)
在TrackRecord的数据库中,定义了不同的缺陷,任务,组成员等内容;通过图形界面进行输入
2) 定义规则(rules)
规则引擎(Rules engine)允许管理者对不同信息类型创建不同的规则,规定不同字段的值的范围等
3) 工作流程(Workflow)
一个缺陷,任务或者其它条目,从它被输入到最后排除(closed)期间经历的一系列状态。
4) 查询(Queries)
对历史信息进行查询,显示结果
5) 概要统计或图形表示(Outline and graphs)
动态的对数据库中的数据进行统计报告,可按照不同的条件进行统计,同时提供了几种不同的图形显示:
---- 文本方式显示不同缺陷状态、列表。
---- 立体彩色条形图显示不同优先级的缺陷状态
---- 立体彩色条形图显示不同开发者不同优先级的缺陷状态
---- 彩色饼图显示所有人员发现缺陷占总缺陷数的百分比
6) 网络服务器(WebServer)
网络服务器允许用户通过网络浏览器访问数据库。
7) 自动电子邮件通知
提供报告的缺陷邮件通知功能,并为非注册用户提供远程视图(在保证项目信息安全的情况下,让某些非项目组人员可以了解项目的相关信息)
3. ClearQuest(Business)
Rational一向以功能强大产品类型全面而著称。Rational ClearQuest 是基于团队的缺陷和变更跟踪解决方案,它包含在Rational Suite中。Rational Suite 是针对分析人员、开发人员和测试人员进行了优化的一套软件开发全面解决方案。作为它主要组件之一的Rational ClearQuest 是一套高度灵活的缺陷和变更跟踪系统,适用于在任何平台上,任何类型的项目中,捕获各种类型的变更。它的强大之处和显著特点表现在以下几个方面:
1) 支持数据库MS ACCESS和SQL SERVER6.5
2) 拥有可完全定制的界面和工作流程机制,能适用于任何开发过程
3) 可以更好地支持最常见的变更请求(包括缺陷和功能改进请求),并且便于对系统做进一步的定制,以便管理其他类型的变更
4) 提供了一个可靠的集中式系统,该系统与配置管理、自动测试、需求管理和过程指导等工具相集成,使项目中每个人都可以对所有变更发表意见,并了解其变化情况
5) 与Rational的软件管理工具ClearCase完全集成,让用户充分掌握变更需求情况
6) 能适应所需的任何过程、业务规则和命名约定。可以使用ClearQuest 预先定义的过程、表单和相关规则,或者ClearQuestDesigner 来定制––几乎系统的所有方面都可以定制,包括缺陷和变更请求的状态转移生命周期、数据库字段、用户界面布局、报表、图表和查询等
7) 强大报告和图表功能,使您能直观、简便地使用图形工具定制所需的报告、查询和图表。用户可深入分析开发现状
8) 自动电子邮件通知、无需授权的Web 登录以及对Windows、UNIX 和Web 的内在支持,ClearQuest 可以确保团队中的所有成员,都被纳入缺陷和变更请求的流程中
4. Bugzilla(Open source)
Bugzilla 是一个“缺陷跟踪系统”或者“bug跟踪系统”,帮助个人或者小组开发者有效的跟踪已经发现的错误. 多达数商业缺陷跟踪软件收取昂贵的授权费用,bugzilla做为一个免费软件,拥有许多商业软件所不具备的特点,因而,现在已经成为全球许多组织喜欢的缺陷管理软件。它的主要特点如下:1) 普通报表生成:自带基于当前数据库的报表生成功能
2) 基于表格的视图:一些图形视图(条形图、线性图、饼图)
3) 请求系统:可以根据复查人员的要求对bug进行注释,以帮助他们理解并决定是否接受该bug
4) 支持企业组成员设定:管理员可以根据需要定义由个人或者其它组构成的访问组
5) 支持用户名通配符匹配功能:当用户输入一个不完整的用户名时,系统会显示匹配的用户列表
6) 内部用户功能:可以定义一组特殊用户,他们所发表的评论和附件只能被组内成员访问
7) 时间追踪功能:系统自动记录每项操作的时间,并显示离规定的结束时间剩余的时间
8) 多种验证方法:模型化的验证模块,使用户方便的添加所需系统验证。Bugzilla已经内建了支持MySQL和LDAP授权验证的方法
9) 可当地化配置:管理员可以根据用户所在地域而自动使用当地用户的字体进行页面显示
10) 补丁阅读器:增强了与Bonsai,LXR和CVS整合过程中提交的补丁的阅读功能,为设计人员提供丰富的上下文
11) 评论回复连接:对bug的评论提供直接的页面连接,帮助复查人员评审bug
12) 支持数据库全文检索,包括对评论、概括、等
13) Email地址加密,保护使用者的电子邮件地址不被非法获取
14) 视图生成功能:高级的视图特性允许您在可配置的数据集的基础上灵活的显示数据
15) 统一性检测:扫描数据库的一致性。报告错误并允许客户打开与错误相关的bug列表。统一性检测同时检测用户的发送邮件列表,提示未发送邮件队列等的状态。5. QAMonitor(国内商业软件)
软件质量监控系统QAMonitor,做为北京航空航天大学科技开发部的推广项目,是一个实时地记录和管理测试阶段信息的软件开发支持工具。它将信息在软件开发小组内,即在管理人员、开发人员、测试人员和其他相关人员之间方便地进行传递。这些信息包括:所发现的软件问题的描述信息,软件问题处理的进度信息等等。
使用QAMonitor来管理测试信息,便于对软件质量进行分析和评估。并指导软件质量保证工作。对于不同工作类型的人员,QAMonitor都可以为他们产生相关的统计数据。QAMonitor的功能主要如下:1) 管理项目组中用户的级别和权限;
2) 报告软件缺陷的类别和严重程度;报告软件缺陷处理过程的进展状态;
3) 支持电子邮件服务,方便地进行信息的传递;
4) 查询和统计缺陷记录;
5) 生成数据报表和统计图形。
该系统虽然使用起来很方便,但是存在以下问题:
1) 使用的是Excel97,很容易损坏,即使可以修复也会丢失记录,所以一定要每天做备份。
2) 使用过程中服务器端必须完全共享测试文件,可能引起病毒等问题。
3) 必须安装客户端,现在的趋势应该是使用Web方式的。
4) 客户端和其他的程序可能会有冲突,至少QAMonitor和Rational Robot的一个dll会冲突。
5) 无法自定义一些选项,流程过于僵化。
6. BMS(国内商业软件)
上海微创软件有限公司是上海联和投资有限公司与全球软件行业领头羊微软公司合资成立的新兴软件企业。以BMS XP为首的一系列解决方案在国内软件及相关领域的应用奠定了基础。其中,软件开发管理解决方案的核心产品BMS XP将微软丰富的项目开发经验与众多用户的实际需求结合起来,帮助中小软件企业规范和完善管理流程、强化产品质量,并从根本上推动企业管理思想和方法的进步。BMS的主要特点如下:1) 在微软最新.NET技术的基础上,BMS XP可以全方位的跟踪、管理、统计和分析企业内部项目质量管理过程中的缺陷,最大限度减少缺陷的出现率,进而实现软件质量的量化。
2) BMS可记录企业软件开发过程中发现的缺陷,提供不同条件的缺陷查询与针对性管理。
3) 能够以多种形式的统计报表帮助相关人员直观掌握缺陷的全局情况,实现对整个软件开发过程的多层次、多角度管理,完整调控软件开发的总体状况与发展趋势。
4) 具有决策支持、实时通知等实用性功能,也对软件企业工作效率的提高和流程的改善助益良多。
5) 良好的跨平台使用性,无论客户从事的是通用软件产品开发、项目定制、还是硬件相关的集成开发,都可作为BMS的用武之地。这一点在国内千差万别的复杂软件开发环境中,有着格外重要的意义。
BMS做为国内一个相对比较成熟的缺陷管理工具,试用过后感觉和国外的商业软件还是有一定的差距,无论从界面还是从功能上。
TestDirector
Mercury的测试管理软件TestDirector,是一个集中实施、分布式使用的专业的测试项目管理平台软件。通过在一个整体的应用系统中提供并且集成了测试需求管理,测试计划,测试日程控制以及测试执行和错误跟踪等功能,TestDirector 极大地加速测试过程。
(1) 测试需求管理
程序的需求驱动整个测试过程。TestDirector的Web界面简化了这些需求管理过程,以此您可以验证应用软件的每一个特征都功能正常。TestDirector的需求管理可以让测试人员根据应用需求自动生成测试用例。通过提供一个直观机制将需求和测试用例、测试结果和报告的错误联系起来,从而确保完全的测试覆盖率。(2)测试计划
测试计划的制定是测试过程中至关重要的环节。它为整个测试提供了一个结构框架。TestDirector的Test Plan Manager在测试计划期间,为测试小组提供统一的Web界面来协调团队间的沟通。(3) 安排和执行测试
一旦测试计划建立后, TestDirector的测试实验室管理为测试日程制订提供一个基于Web的框架。它的Smart Scheduler™根据测试计划中创立的指标对运行着的测试执行监控。(4) 缺陷管理
当测试完成后,项目经理必须解读这些测试数据并将这些信息用于工作中。当有出错发现时, 他们还要指定相关人员及时纠正。 TestDirector的缺陷管理直接贯穿作用于测试的全过程,以提供管理系统端到端的缺陷跟踪—从最初的问题发现到修改错误再到检验修改结果。(5) 用户权限管理
基于应用评测中心具备多项目,多人员的特点。TestDirector可以建立用户权限管理。这里的用户权限管理类似Windows操作系统下的权限管理,将不同的用户分成用户组。
在TestDirector中,缺省拥有六个组 TDAdmin, QATester, Project Manager, Developer, Viewer, Customer ,用户还可以根据需求,自己建立特殊的用户组。每一用户组,都拥有属于自己的权限设置。(6) 集中式项目信息管理
TestDirector采用集中式的项目信息管理,它安装在应用评测中心的服务器上,后台采用集中式的数据库(Oracle, SQL Server, Access, etc)。所有的关于项目的信息都按照树状目录方式存储在管理数据库中,项目信息的访问,只有被赋予权限的用户,才可以登陆和查询、修改。(7) 分布式访问
一套基于Web的测试管理系统提供了一个协同合作的环境和一个中央数据库。由于测试人员分布在各地,您需要一个统一的测试管理系统能让用户不管在何时何地都能参与并出力于整个测试过程。从整体来看,TestDirector完全基于WEB的用户访问,拥有可定制的用户界面和访问权限;完全基于WEB的服务器管理,用户组和权限管理,实现测试管理软件的远程配置和控制。
SilkCentral Issue Manager
实现缺陷跟踪过程的全程自动化
SilkCentral Issue Manager 是功能强大的缺陷管理工具,用于软件开发过程中,对软件缺陷进行记录、对缺陷状态进行自动跟踪、对缺陷处理结果进行归类处理。SilkCentral Issue Manager 能够灵活配置以满足各种业务环境和产品的需求。这种灵活、易用的缺陷跟踪流程不仅提高了项目开发质量,同时也提高了项目开发效率。
缩短缺陷处理的时间
对软件组织而言,建立合理处理缺陷的流程是很重要的。SilkCentral Issue Manager 所提供的行为驱动的工作流程,能够帮助您自动完成对缺陷的相关处理过程。通过SilkCentral Issue Manager,您可以记录软件测试过程中发现的缺陷以及用户所报告的问题;可以通过电子邮件通知、自动分配规则、预先定义的优先级等对问题进行分配。在SilkCentral Issue Manager中,一旦选择并且设定了适当的处理规则之后,SilkCentral Issue Manager 能够按照这些规则对各个缺陷状态按照其生命周期进行相应处理。这种自动化的工作流程可以使您迅速地将任务分派给相关人员进行处理。
您也可以将SilkCentral Issue Manager 与现有的工作流程结合起来,彻底提高生产效率。SilkCentral Issue Manager 中定制处理的卡片允许您关注对自己最重要的信息,如每个缺陷可能造成的风险等。通过将SilkCentral Issue Manager 中相关的信息项进行定制处理,可以很容易地将现有的处理流程实现自动化完成。
通过建立适用于每个项目的处理规则,SilkCentral Issue Manager 可以减少大量单调的手工处理任务和重复性的决策处理,进而减少了缺陷跟踪的时间,以便将更多的时间用于软件缺陷的修改与测试。这样,可以加快产品推向市场的时间和提高产品的可靠程度。
以Web方式进行缺陷追踪
随着企业的发展,开发部门的不断扩张,其地域分布也越来越分散。这时需要解决不同地域、不同部门之间协同开发的问题。SilkCentral Issue Manager 允许用户通过Web方式使用,这样有利于不同地点间甚至跨洲的各个开发部门间进行缺陷管理。在浏览器中,SilkCentral Issue Manager 允许使用者进行自定义链接,访问他们所关心的区域。这样,使用者可以在任意时刻快速找到关键信息,从而提高生产效率。通过SilkCentral Issue Manager 的SMTP兼容的邮件通知系统,使用者可以通过点击任意文本链接打开浏览器应用。
降低缺陷跟踪的劳动量
SilkCentral Issue Manager 增强的GUI界面允许您迅速开始工作。其简单、直观的功能可以帮助您快速建立和定制项目,以适应特殊项目的需求;可以组织并保存与每个人工作相关的查询、报表和图形;还可以设置每个人的工作权限以保证数据的安全性和可维护性。
能够产生详细的图表
SilkCentral Issue Manager 提供了许多预定义的报表、图表以及用于有效表达项目状态的的查询信息来帮助您管理项目。作为补充,您还可以定制并保存自己的报表、图表和查询信息。这样可以保证在整个团队中,使用统一定义的信息,提高沟通效率,有助于对缺陷进行统一管理。
此外,您可以保存并重用个人级、项目组级、公司级的各种查询条件。通过使用SQL语言,您可以从不同数据库中,提取复杂的、跨产品的问题或信息。为了使管理者能够确定产品是否具备发布条件,SilkCentral Issue Manager 提供了直接访问关键信息的功能。
主要益处
l 可定制的、行为驱动的工作流程能够自动将缺陷分派给相关项目组或个人进行处理
支持WEB方式进行远程缺陷管理l
l 使用SMTP兼容的e-mail软件包,对缺陷状态的变化实现实时通知
并发的许可证机制保证在整个公司范围内使用l
l 全面的在线帮助
详尽的报表、图表、查询可以帮助确定产品是否具备发布条件l
l 行为驱动的工作流特点保证了强大的查询功能
可与Silk其他产品整合l
SilkCentral Test Manager
SilkCentral Test Manager
自动化测试流程,提高质量和生产力
SilkCentral Test Manager 是一种全面的测试管理系统,能够提高测试流程的质量和生产力,加速企业应用成功上市的速度。用户可以使用这一工具对整个测试周期进行计划、记录和管理,包括获取和组织主要业务需求、跟踪执行情况、设计最佳测试计划、调度自主测试、监视手工和自动测试的进度、查找功能缺陷以及对应用进行上市前评估。
优势:
· 基于 Web 的调度、执行、报告及缺陷跟踪功能简化了测试管理工作
· 加快复杂分布式应用的部署速度
不适合使用自动化测试工具的原因
2007-04-06 10:23:43
如何有效地测试不断升级更新且不同环境的应用系统—自动化测试工具
这里有几个原因导致 GUI 自动化测试比预期的要困难:
第一个原因是需要手工完成部分脚本。
“ 录制回放 ” 虽然可以生成部分测试脚本,但是有很多问题导致 “ 录制回放 ” 不能应用到整个测试执行过程中。
第二个原因把 GUI 自动化测试工具和被测试的产品有机的结合在一起需要面临技术上的挑战。
非标准的、定制的控件会增加测试的困难,解决方法总是有的,可以采用修改产品源代码的方式,也可以从测试工具供应商处升级测试工具。另外,还需要分析测试工具中的 BUG ,并且给工具打补丁。也可能测试工具需要做相当的定制,以便能有效地测试产品界面上的定制控件。
第三个原因GUI 设计方案的变动会直接带来 GUI 自动化测试复杂度的提高。
在开发的整个过程中,图形界面经常被修改或者完全重设计,这是出了名的事情。花费大量的时间修改测试脚本,
工具本身并没有想象力和灵活性,而人对界面美观性、逻辑合理性,容易作出判断。所以功能测试自动化主要的应用在回归测试中,而且产品的界面(UI)和功能变化较大,自动化的脚本(scrīpt)维护成本较大
自动化测试前期投入大,对被测对象要求高以及存在其它的局限性。
软件测试自动化绝不能代替手工测试,它们两者有相应的测试对象和范围:
1) 工具本身并没有想象力和灵活性,根据业界统计结果,自动测试只能发现15-30%的缺陷,而手工测试可以发现70-85%的缺陷;所以自动化测试有其局限性,不适合软件的新功能测试,而特别适合回归测试,可以保证对已经测试过部分进行测试的准确性和客观性。
2) 在系统功能的逻辑测试、验收测试、适用性测试、涉及物理交互性测试时,也很难通过自动化测试来实现,多采用黑盒测试的手工测试方法;
3) 单元测试、集成测试、系统负载或性能测试、稳定性测试、可靠性测试等比较适合采用自动化测试;
4) 当界面、需求变化比较频繁时、开发周期很短的软件、或做一次性软件开发项目(而不是做软件产品)时,自动化测试吃力不讨好,投入大而产出小。
5) 有些测试工具只能运行在Windows平台上,不能运行在Mac/Unix等平台上。
多数情况下,手工测试和自动化测试相结合,以最有效的方法来完成测试任务。3.软件测试误区:期望用测试自动化代替大部分人工劳动
目前,很多的企业首先是从节约成本的角度考虑去引入测试自动化工具的。是的,自动化测试工具的确能用于完成部分重复、枯燥的手工作业,但不要指望他来代替人工测试。一般来讲,产品化的软件更适于功能测试的自动化,由标准模块组装的系统更好,因为其功能稳定,界面变化不大。性能测试似乎更加依赖于自动化测试工具(如模拟多个虚拟用户和收集性能指标等),但考虑购买时也要注意,假设一个软件不支持DotNet Remoting,也许她就不一定适用于贵公司。