QTP使用技巧

发表于:2015-07-14来源:uml.org.cn作者:不详点击数: 标签:qtp
1.runaction 后面能不能接变量(动态调用action,所以从数据库取数据做action名字了,但是调用总是找不到)? A:脚本中原有RunAction "testbase [case1]", oneIteration把引号中的内容放到Glo

  1.runaction 后面能不能接变量(动态调用action,所以从数据库取数据做action名字了,但是调用总是找不到)?

  A:脚本中原有RunAction "testbase [case1]", oneIteration把引号中的内容放到Global表中的第22行,然后将代码修改为:datatable.getsheet("Global")

  datatable.setcurrentrow(22)

  strLogin=DataTable("ActionName","Global")

  RunAction strLogin, oneIteration help中也有相关帮助如:Syntax RunAction ActionName, [IterationMode , IterationRange , Parameters] ActionName : String : The name of the action 2.QTP8.2 中调用VB函数的问题(用VBscrīpt写了一些测试脚本需要的几个通用函数,有没有办法可以用类似include的方式进行调用,而不需要每次都把这些函数Copy到新的脚本中)?

  A:程序开头加上ExecuteFile "……\……\……\project\DeVariable.vbs" 3.QTP 如何做回归测试(300多个TestCase,TD是否可以管理) ?

  A:TD可以实现,可以生成测试集,一个测试集可以包含若干个测试脚本QTP8.2本身提供一个工具Test Batch Runner但是运行完没有报告。

  MI有另一个工具叫MTM(multitestmanager)

  5.在QTP中如何设置使用别的浏览器(XP系统,用IE访问程序时,每次总提示屏蔽安装ActiveX插件,需要手动安装。但把这个过程录制到QTP 后,回放一次是成功的。当我给某个输入框参数化了好多数据后,回放过程中,某些就会失败。

  可能有两个方面可以解决这问题1、每个动作设置延迟时间 2、设置为用别的浏览器。)

  (失败的提示信息是 object not visible)

  A:1.延迟可用WAIT X(X单位是秒)

  2.可以安装插件添加新的浏览器SystemUtil.Run "file“ "params" "dir" "op'' "mode" QTP运行可执行文件的方法及其参数ps: 建议是用IE浏览器,或者IE内核浏览器做测试6.checkpoint 检查网页,是否能实现只要网页出现乱码就返回错误报告?

  A:Text not displayed能解决问题关于 Text Checkpoint 的总结。

  1)Text Checkpoint 的检查部分分为三个部分。Checked Text 、Text Before 、Text After.在默认的情况下,Checked Text执行的是精确检查,其余两个部分执行的是模糊检查。Text Before(After)检查的内容可以比实际的内容少。但是不能有和是实际内容不相符的地方,否则就失败。

  2) Exact match选项。如果选择了这个选项,三部分完全都进行精确检查。个人觉得和只检查checked Text部分没有区别。

  3) Text not displayed.这个选项本质上就是一个结果取反的过程。就是把检查的结果给反过来,把pass变成Fail,Fail变成pass.我觉得这样就很容易理解。

  7.WSH 的应用方法A:WSH 实际上是一个脚本语言的运行环境,它之所以具备强大的功能,是在于其充分挖掘了脚本语言的潜力。因此,如果抛开脚本语言而空谈 WSH ,那实际上就没有了意义。而如果再展开来讲述脚本语言,显然就离开了今天的主题。

  在这种情况下,只好采取一种折衷的方法:给大家推荐几个脚本文件利用 WSH 执行任务的实例,希望大家能通过这些例子对 WSH 的使用有一个初步的认识。

  脚本文件的编写十分方便,你可以选用任意一个文字编辑软件进行编写,编写完成后,只需将它保存为 WSH 所支持的文件名就可以了(如。js 文件和。vbs 文件)。最常用的就是记事本编辑器,下面的实例都是以它作为工具编写的。

  打开记事本编辑器,在上面编写如下内容:Wscrīpt.Echo("走近 WSH")

  将它保存为以 .vbs 或 .js 为后缀名(千万不要写成了 .txt)的文件并退出记事本。双击执行这个文件。

  这一次,我们要利用 WSH 完成一次创建十个文件夹的工作。代码如下:dim objdir set ōbjdir=wscrīpt.createobject("scrīpting.filesystemobject")

  for k=1 to 10 anewfolder="c:\chapter" & k objdir.createfolder(anewfolder)

  next同样,将它存为 .vbs 文件并退出。运行后,我们会发现,C 盘根目录下一次性多出了十个新文件夹。

  最后,再举一个在服务器上的运用。下面的代码将帮助你重新启动指定的 IIS 服务:  ' define a constant for stopped services Const ADS_SERVICE_STOPPED = 1 ' get an ADSI object for a computer Set ōbjComputer = GetObject("WinNT://MYCOMPUTER,computer")

  ' get an object for a service Set ōbjService = objComputer.GetObject("Service","MYSERVICE")

原文转自:http://www.uml.org.cn/Test/200905216.asp