星期五, 九月 15, 2006

QuickTest Plus小工具,大作用(转载)

象我这样初学QTP的朋友刚开始时很可能没有注意到QuickTest Plus,因为QTP安装后默认是没有安装plus的,千回百转知道了plus,大概看了看,发现plus虽然都是些辅助性的小工具,但往往会给你的工作带来事半功倍的效果。

一、安装QuickTest plus
QTP安装后,在 程序 > QuickTest Professional下点击QuickTest Plus,然后按照提示一步步往下安装即可, 其中要求输入序列号,输入和QTP安装时相同的序列号就可以了(8888-8888888888)。

二、提示和技巧
plus不仅提供了一些工具,还在它的帮助手册里给出了一些提示和技巧,以及一些实用的Function。 在这里我把一些比较常用的好东东贴出来,其他的就看plus的帮助吧。

1、创建action template. 当希望在每一个新建action时都增加一些头部说明,比如作者、创建日期、说明等,用action template 来实现最简单快捷。
方法:用记事本等文本编辑器,输入如下类似的内容:
'Company: xxxx
'Author: xxx
'Product: xxx
'Date: xx
然后将文件保存为ActionTemplate.mst,并存放到QTP安装目录下的dat目录,重启QTP,新建一个action试试,新建的action会包含以上信息。

2、关于设置测试报告里只显示error的信息。
帮助中说:修改安装目录下bin\QTReport.ini文件,增加以下内容:
[FilterDialog]
ReportAppDefaultFilter=1 # for error only
ReportAppDefaultFilter=3 # shows all messages (default)
但根据我的测试结果,不尽其然:
1)当ReportAppDefaultFilter=1时,如果Object Repository中缺少对象,在报告中会在相应的 action前打叉,但不会提示具体错误,而成功的步骤都有具体信息显示。
2)用Reporter.ReportEvent测试的结果是:
ReportAppDefaultFilter=1时,只显示micDone的具体信息;
ReportAppDefaultFilter=2时,只显示micFail的具体信息;
ReportAppDefaultFilter=3时,只显示micDone和micFail的具体信息; ReportAppDefaultFilter=4时,只显示micPass的具体信息;
似乎无规律可寻,所以我的结论暂时是:不要设置这个参数,用默认的,显示所有信息,更多的信息有利于分析结果。

3. 启动IE的语句:SystemUtil.Run "iexplore.exe", http://www.mercuryinteractive.com

4. 关闭IE或其他程序的语句:SystemUtil.CloseProcessByName "app.exe" or SystemUtil.CloseProcessByWndTitle "Some Title"

三、Function Libraries
plus的帮助中提供了一些常用的Function,把这些function copy到文本编辑器中保存为.vbs文件,并添加到Resources中就可以直接调用了, 或直接copy到你的action中,就可以在当前的action中调用。更推荐第一种方法,所有的action都可以调用。

1、文件操作相关的function,如下,望名则可生意:
Function CreateFile(sFilename, bOverwrite);
Function OpenFile(sFilename, iomode, create);
Function AppendToFile(sFilename, sLine);
Function WriteToFile(sFilename, sLine);

2、Function NormalizeString(OrgStr); (将字符串变成regular express)

3、GlobalDictionary的使用,这是另外一种可以共享全局变量的方法,在所有的action中,包括local和external action中都可以访问。

4、使用文件系统相关的function:
Function ReadLineFromFile (byref FileRef);
Sub FileDelete ( FilePath);
Function FileCompare (byref FilePath1, byref FilePath2, byref FilePathDiff, ignoreWhiteSpace);
Function CheckFileExists (FilePath)

5. web table相关的function:
Function ItemByKeyColumn(): 根据table中某列的值,得到同一行中另一列的对象。(这个功能非常有用。)
Function ObjectsByMicClass(Obj, micClass): 得到table中所有的micClass类型的对象集合。

四、工具

1、Automation Generator Utility
添加一系列动作,然后自动完成。如:启动QTP,然后执行test1, test2, test3...,最后关闭QTP,还可以连接或断开Quality center.
值得注意的是,每个test都可以分别指定test result文件,这样可以把所有test result指定到同一个目录下,所有test执行完成后,用Test Result Viewer就可以快速的查看测试报告。

2、External Action Call Modifier Utility
外部Action调用修改工具。当删除一个Reusable action前,如果没有先删除其他test中对它的调用,则打开其他test时,会提示找不到某某action,这种情况下启用该工具,工具会列出test下所有调用的外部action(如果调用的action是使用相对路径,则不会列出来),如果外部action找不到,会用红色的问号表示,删除它并保存后就OK了。
也可以在此处修改外部action的来源,修改后原来的action parameter仍会保留。

3、Repository Merge Utility
合并多个对象库文件中的对象,如果出现冲突,可以选择忽略,或手工合并,或自动合并。 对象库文件是Action目录下的Resource.mtr文件。

4. Report Analyzer
Test Result的另一个查看工具,提供了一些过滤条件,比如只查看failed step, 或只查看checkpoints,或只查看某个action。

先就写这么多了,抛砖引玉,希望你能发现你想要的东西。写得不对的,不要客气,请指出来,不胜感激。

星期三, 九月 13, 2006

如何在 SQL Server 2005 中为安装程序增加计数器注册表项值

在 SQL Server 安装开始前,Microsoft SQL Server 安装程序中的安装配置检查器 (SCC) 会验证计数器注册表项的值。如果 SCC 无法验证现有的注册表项,或 SCC 无法运行 lodctr.exe 系统程序,则 SCC 检查会失败,致使安装受阻。
错误编辑注册表会严重损坏您的系统。更改注册表项之前,建议您备份计算机中的所有重要数据。
1. 在 Microsoft Windows 2003 或 Windows XP 桌面上,依次单击“开始”、“运行”,然后在“打开”中键入 regedit.exe,再单击“确定”。在 Windows 2000 中,使用 regedt32.exe 启动注册表编辑器。
2. 定位到以下注册表项:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib]
"Last Counter"=dword:00000ed4 (5276)
"LastHelp"=dword:00000ed5 (5277)
3. 上一步的“Last Counter”值 (5276) 必须与以下注册表项中“Perflib\009”的“Counter”项的最大值匹配,并且上一步的“Last Help”值 (5277) 必须与以下注册表项中“Perflib\009”的“Help”项的最大值匹配。
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009]
注意 009 是英文中的一个示例。“Last Counter”和“Last Help”值是由 Windows 动态分配的;这两个值会因计算机的不同而不同。
4. 如有必要,可修改“\Perflib”项中的“Last Counter”和“Last Help”值的值:在右侧窗格中,右键单击“Last Counter”或“Last Help”,单击“修改”,再单击“Base = "Decimal"”,在“值数据”中设置值,再单击“确定”。如有必要,对另一个项重复以上过程,然后关闭注册表编辑器。
5. 再次运行 SQL Server 安装程序。

注意:
1、 SQL SERVER 2005一般是有两张CD的,安装时最好都解压,因为有些安装需要用到第二张CD的内容,如果只解压第一张CD安装时可能会不成功。
2、 以上的添加方法是针对英文的SQL SERVER 2005,如果安装中文版的,“Last Counter”和“Last Help”值应该与“Perflib\044”下的“Counter”项和“Help”项的最大值匹配。

星期三, 九月 06, 2006

在QC 9.0 中启用数据库服务器文本搜索

在“Projects(项目)”列表中添加任何项目之前或之后,您可以为安装和配置了文本搜索功能的指定数据库服务器启用文本搜索。

备注:在添加项目之前在数据库服务器上启用文本搜索时,则您随后添加的项目将启用文本搜索。 在添加项目之后在数据库服务器上启用文本搜索时,您必须手动为每个现有项目启用文本搜索。

要在添加项目之前在数据库服务器上启用文本搜索,请执行以下操作:

1、在“Site Administration(站点管理)”中,单击“DB Servers(数据库服务器)”选项卡。
2、在“Database Servers(数据库服务器)”列表中,选择某个数据库服务器。
3、单击“Text Search(文本搜索)”链接并单击“Yes(是)”确认。 在“Set CTXSYS Password(设置 CTXSYS 密码)”对话框中键入 CTXSYS 用户的密码,然后单击“OK(确定)”。 “Text Search(文本搜索)”值将从“Disabled(禁用)”更改为“Enabled(启用)”。 请注意,您无法禁用它。
4、在“Default Search Language(默认搜索语言)”列表中,设置数据库服务器的默认文本搜索语言。

要在添加项目之后在数据库服务器上启用文本搜索,请执行以下操作:

1、在“Site Administration(站点管理)”中,单击“DB Servers(数据库服务器)”选项卡。
2、在“Database Servers(数据库服务器)”列表中,选择某个数据库服务器。
3、单击“Text Search(文本搜索)”链接并单击“Yes(是)”确认。 在“Set CTXSYS Password(设置 CTXSYS 密码)”对话框中键入 CTXSYS 用户的密码,然后单击“OK(确定)”。 “Text Search(文本搜索)”值将从“Disabled(禁用)”更改为“Enabled(启用)”。 请注意,您无法禁用它。
4、在“Default Search Language(默认搜索语言)”列表中,设置数据库服务器的默认文本搜索语言。
5、单击“Site Projects(站点项目)”选项卡。
6、对于要启用文本搜索的各个项目,请单击“Enable/Rebuild Text Search(启用/重建文本搜索)”按钮。 单击“Yes(是)”确认。

星期二, 九月 05, 2006

QC 9.0在XP和Win2003上安装时出现的一个问题

QC 9.0在XP和Win2003上安装时,到了配置数据库的那一步老是出现属性不正确(我使用的SQL Server),而无法正确安装下去,开始以为是密码不能为空,服务器上一定要安装数据库服务器等,但是试过后都不能解决问题。刚好在配置我们产品的时候,也出现了数据库连接不上的问题,经查阅资料,原来是XP和Win2003上需要打上SQL Server SP4,否则在远程访问时会出现问题。

现在在打了补丁后,QC终于可以连上数据库服务器了。

星期五, 九月 01, 2006

Borland(Segue)软件测试工具

Borland(Segue)软件是全球软件质量优化(SQO)领域的领导性公司,总部坐落于美国麻省列克星顿市,纳斯达克上市公司(NASDAQ-SCM: SEGsU),专注于发展并提供软件质量优化解决方案,以保证企业应用的精确性和性能。目前,全球有2000家企业采用Segue解决方案应对质量优化的挑战,其中包括61%的《财富》100强企业。

1、SilkCentral Test Manager
  SilkCentral Test Manager 是一种全面的测试管理系统,能够提高测试流程的质量和生产力,加速企业应用成功上市的速度。用户可以使用这一工具对整个测试周期进行计划、记录和管理,包括获取和组织主要业务需求、跟踪执行情况、设计最佳测试计划、调度自主测试、监视手工和自动测试的进度、查找功能缺陷以及对应用进行上市前评估。
优势:
  基于 Web 的调度、执行、报告及缺陷跟踪功能简化了测试管理工作
  加快复杂分布式应用的部署速度
  提高了测试流程的可视性,有利于决策制定
  可以根据功能、优先级、业务风险或其他既定流程对资源实行有效分配
  测试早期就发现问题并加以解决,大大降低了成本
  明确了检验准则 (Exit Criteria),从而降低了风险
  部署高质量应用,满足业务需求
  与Segue 自动化测试工具无缝整合,极大地提高了生产力和应用质量
  与Segue 的SilkCentral Issue Manager 高度整合,进行自动化缺陷跟踪

2、SilkCentral Issue Manager
  软件开发中约 80% 的成本用于解决应用缺陷。 SilkCentral Issue Manager(前身为 SilkRadar)帮助用户降低成本、加速缺陷等问题的解决。SilkCentral Issue Manager 促成灵活多变的工作流,能够很好地与业务流程配合,将问题自动引导向下一阶段,从而优化了缺陷跟踪流程。基于 Web 的用户接口便于对中央储存器上的缺陷信息进行 24x7x365 的访问,大大方便了分散在不同地点的工作团队的使用,促进不同部门之间的协作。同时,富有见地的报告帮助用户确定项目的进展情况。

优势:
  主动提供缺陷的解决方案,缩短了缺陷解决周期
  使用户对各种问题的解决情况、下一步安排及相应负责人一目了然
  随时随地跟踪缺陷并知道需要增强哪些方面的功能
  保证项目高质量完成,满足用户要求
  使用简易灵活的工作流引擎将跟踪流程自动化,大大精简了运营成本
  基于 Web 的信息共享功能促进了部门间的交流
  能够与 Segue 的测试管理、功能测试和负载测试工具整合

3、SilkTest
  SilkTest对企业应用在各种环境下进行功能测试,是业界领先的自动化工具。Segue的自动化测试技术提高了测试准确性、一致性,并大大节省了时间。在当今日益缩短的测试周期要求下,这些功能可以让用户极大地提高应用的安全性。为便于使用,SilkTest还设计有一系列功能,不仅能够提高生产力,还可以让新老用户快速创建功能测试、自动运行测试并准确分析结果。测试时间减少,则QA人员就可以将更多精力放在提高测试覆盖率以有优化应用质量上。用户不仅可以在应用发布之前对其进行功能验证,还能够重复使用现有的测试用例,从而轻松地判断出新增功能对现有功能会产生哪些影响。

优势:
  将功能测试进程自动化,加快了上市时间
  提高应用覆盖率及一致性,极大地提高了应用可靠性
  工作进度条及向导会引导用户快速简便地创建并自定义测试,大大提高了生产力
  早期找出缺陷并加以解决,避免了高成本的重新开发工作
  进行24x7x365的自主测试,将遗漏缺陷的机率降至最低
  在多台计算机上分配测试任务,缩短测试周期
  利用准确的分析结果使应用质量达到最优化

4、SilkTest International
  在处理国际性应用的本地化版本时,传统的做法是采取二级手动测试的方法。这种方法需要投入大量的财力和时间,并留下了大量的隐患。SilkTest International?带来了一种快速、准确、完全自动化的测试方法,彻底改变了传统方法的弊端。
  凭借SilkTest International,用户能够跨多种语言、平台和浏览器进行测试,以确定其国际性应用能否在当地市场可靠运行,作为业内唯一的Unicode测试工具,它能够让用户借助同一套脚本,在多个本地平台上同时测试应用的所有语言版本。它让用户能够从中央管理点,快速创建和分享测试方案,并自动实施,准确分析。它让用户的QA团队以更少的时间,进行更多的测试作业,并优化应用的质量。SilkTest International,是业内唯一的Unicode性能测试工具。

优势:
  快速、放心地部署国际性应用的本地版本。
  采用统一脚本,同时测试所有语言,缩短了测试周期。
  拓展测试范围,提高延续性,加强应用的可靠性。
  采用工作流工具条和向导,快速创建测试,提高生产力。
  尽早发现bug,避免重复的开发工作。
  实现了24x7x365无人看守测试,降低了风险。
  在多台计算机上同时进行测试,提高了效率。
  通过精确的结果分析,优化应用质量。

5、SilkPerformer Component Test Edition
  远程应用组件是分布式应用的中心功能块,因此也对应用质量起着关键作用。Segue 推出的SilkPerformer组件测试版让用户在应用生命周期的早期,甚至在客户应用之前,就可以对这些重要的远程组件进行三个主要方面的质量测试并进行优化:
  * 功能性
  * 性能
  * 互用性
  SilkPerformer 组件测试版与单元测试工具不同,它测试组件的环境是用户并发访问服务器的真实环境。而且,其可视化脚本技术及脚本向导使用起来简易方便。因此,即使是非编程人员也能够发现可能会在真实环境下出现的问题,这样就能在早期加以解决,避免造成现实损失,从而保证产品能够高质量的如期发布。

优势:
  降低修复缺陷及瓶颈的成本
  开发早期发现问题,使修复成本降至最低
  缩短项目周期,同时提高质量
  对开发中测试资产进行有效的重复利用
  促进QA及开发部门的合作及交流
  SilkPerformer将有效提高企业级负载测试的投资回报率

6、SilkPerformer特点:
  企业级自动化测试工具能够支持多种系统,如Web、wireless、Java、.Net、COM、CORBA、Oracle、Citrix、MetaFrame、客户机/服务器、以及各种ERP/CRM应用
  TrueScale技术能够模拟数以千计的并发用户在一台计算机上的动态负载情况
  可视化脚本记录功能及自定义工具简化了测试创建工作
  SilkPerformer的Java/.NET浏览器以及JUnit/NUnit测试输入功能简化了对并发访问情况下远程应用组件的早期负载测试工作
  工作流向导会逐步引导用户完成整个测试流程
  工作负载向导引导用户快速简便地创建实际工作负载
  整合的测试环境为负载测试提供了单一控制点
  TrueModem技术使用不同的上游/下游传输速率准确模拟Web浏览器的高速缓冲能力   可调的Web用户容差水平可以准确模拟真实用户的取消求
  TrueLog技术从最终用户的角度进行全面的前端可视化诊断
  负载验证能够发现应用缺陷,包括测试中虚拟用户会看到的不正确的网页内容
查询追踪计时器可以准确的给出每个Web页组件的反应时间
  服务器分析模块分析服务器数据,并与负载测试结果自动关联,轻松找出瓶颈
  拥有Boreland的Optimizeit ServerTrace 插件,可以进行J2EE 深层诊断
  对健康状况进行实时监控,避免代理机负载过重而出现无效的测试结果
  基于Web的管理报告使非技术人员也能够快速理解测试结果
  同步授权(Concurrent Licensing)允许在多项目,多地点和多个应用场景下使用SilkPerformer和应用虚拟用户水平,极大地提高了成本效益
  与SilkCentral Test Manager的整合使测试流程更加有序,可视性更强
  SilkCentral Performance Manager让用户能够重复使用SilkPerformer 测试资产,管理生产中的应用性能

7、SilkPerformer Lite
  对于中小企业而言,SilkPerformer Lite是一款理想的解决方案:物美价廉、功能完善,能够在Web应用上线前,优化其性能、可伸缩性和可靠性。SilkPerformer Lite让用户能够预测Web应用及其基础设施的“临界点”。产品的另一特性是使用简便。只需一台标准计算机及内置的智能、可视化工作流,用户即可以创建负载测试,模拟高达100个并行用户在动态负载条件下的真实行为。可视化的根源分析工具和管理报告帮助用户轻松发现瓶颈,快速进行修补,从而让用户能够按时推出高性能的Web应用。

  如果用户测试包括非Web应用测试(如客户机/服务器、Citrix、ERP/CRM、中间件),负载超过100个虚拟用户,或异构企业环境分析,则请参考企业级负载与性能测试解决方案 - SilkPerformer。

优势:
  提高应用部署成功率:
  符合业务目标的性能、可伸缩性和可靠性指标
  可接受的服务水平线程
  缩短项目周期时间,降低成本,改善效率:
  降低缺陷与瓶颈修补成本
  有效使用已有QA资源(员工与设备)
  避免IT基础设施中的过度投资:
  充分的服务器系统
  最佳的应用性能和可扩展性
  轻松移植到企业级负载测试-SilkPerformer上

8、SilkCentral Performance Manager
  SilkCentralTM Performance Manager是一种应用性能管理解决方案,用于对关键任务应用的质量进行优化。SilkCentral Performance Manager从三个方面对最终用户的体验进行监控:可用性、性能和精确性。主动监控利用综合的业务交易对服务级别和性能进行监控,而被动监控则通过记录实际的用户交易,来了解真实用户的行为。  SilkCentral Performance Manager具有很强的功能,如Web图形用户界面、高效的根源分析工具(将最终用户的活动与基础设施指标进行对比)、和对整个测试周期的完整支持,这些功能能够让不同团队在部署前后实现密切协作,并快速确认问题,加快问题的解决。最终,实现了对上线应用的主动管理,减少了意外故障率,优化了上线应用的性能。

  从最终用户的角度进行应用性能管理

优势:  
主动发现应用性能、可用性、准确性方面存在的问题,避免其影响最终用户。
  监测服务等级协议的执行。
  保证关键任务应用的准确性、可用性和性能,加快最终用户的使用。
  缩短缺陷诊断和解决时间,确保最终用户满意。
  充分确定服务器系统规模,优化应用性能和可伸缩性,避免在IT基础结构方面的过度投资。
  充分发挥已有IT应用的作用,如网络和系统管理解决方案。
  用一套解决方案管理所有的应用性能,降低成本。