一些问题的解决方案:

上一篇 / 下一篇  2008-12-19 14:49:20 / 个人分类:QTP

---------------------------------------------

->“实际项目录制脚本时经常遇到这种情况,伴随着系统不断的版本升级更新,需要我们在许多不同情况下回放同样的脚本,这样带来大量脚本中IE跳转地址的变动,有更好的方法能更快速,准确的实现这个需求吗?”

 

->有的,一般情况下最好的方式是把IE跳转地址,在脚本中实现而不是在Record and run settings中设置打开固定的IE请求地址。如下:InvokeApplication "C:\Program Files\Internet Explorer\IEXPLORE.EXEhttp://www.cntesting.net/"

---------------------------------------------

->”录制脚本中发现同一模块的有些功能,步骤基本类似,是否能优化一下代码而减小脚本 代码的缀余呢?

 

->是的若脚本中缀余代码过多,不仅看起来麻烦,维护起来也很不方便,所以我们应该在脚本中善于使用过程,函数,对功能模块步骤基本类似的可以写成过程或则函数来提供调用。

---------------------------------------------

->”能提供一些QTP常用的快捷键吗?这样我想工作的效率也会提高很多,用起来也方便

 

->几个重要又经常使用到的QTP快捷键应该记住: CTRL+Y专家视图编辑前进;CTRL+Z专家视图编辑后退; CTRL+G移动到指定行; F2重新命名Ative的名字; F9设定断点,F3录制,F5运行,F4停止。还有很多快捷键都是经常要用到的,要经常用了才能记牢,我在这就不一一写出来了。

---------------------------------------------

->”项目中,我们经常会遇到这样的需求,需要记录一套脚本的运行时间,如果手工一个个操作去记录下时间的话,一来不是很精确,二来确实手工的方法太麻烦,有中方法解决这个问题吗?

 

->”这个需求是经常遇到的,以前我做项目的时候临近上线要验收测试了,因为时间紧迫必须大概知道脚本的运行时间,当时比较傻一个脚本手工的拿着个表记录时间,后来研究了一下,还是有方法的:在运行脚本的下一行记录下开始时间: startTme = timer;在结束脚本的上一行记录下结束时间: endTime = timer;然后加一句这样的代码runtime= round(endTime – startTime),2)。用四舍五入的方法算出这个时间差就是脚本的运行时间。

---------------------------------------------

->”QTP能录下键盘的操作吗?能把我移动窗口的动作录制下来吗?”

 

->”可以的,但是我用过的就Table,如果要实现键盘按键的操作需要自己编码了,要把一些微小的操作录制下来,那就得启用微小录制了。

---------------------------------------------

->”我需要使用不同ActionDatatable里面的值,实现起来复杂吗?

 

->不复杂: DataTable.GetSheet("Action1").GetParameter("cntesting").ValueByRow(1)

---------------------------------------------

->”项目中有这样的需求,需要我们通过修改系统时间来做一笔定单,但是我总不能手动去修改啊.”

 

->呵呵,都手动去了都不需要自动化了,修改系统时间实际项目中很多要用到,需要自己写个dat文件在本地,里面设置好所要修改的时间,然后在QTP中执行这个dat文件,可以实现这个需求。Dat文件里面只要有这几代码就可以: time%1,然后在QTP, SystemUtil.Run "c:\settime.bat","所要修改的具体时间

---------------------------------------------

->”经常遇到这样的情况,因为要验证弹出的窗口里面的内容,所以在IE属性中设置了不阻止窗口,但问题出来了窗口有时候弹出有时候不弹真奇怪了,如果不弹出来脚本中又录制有则会报错,要怎么去判断窗口是否弹出呢?”

 

->有一个方法Exit。是这样用的 if Browser(…).Page(…)…().exit then ……

---------------------------------------------

问:时间控件QTP能录制下来吗?

 

:对于时间控件的录制问题与开发使用的技术有关,我可以建议你用种方法,但是不同技术开发出的控件可能录制情况也有所不同。试试总比不试的好: Browser("xxx").Page("xxx").WebEdit("StartDate").Object.value=DataTable("StarDate", dtLocalSheet)

---------------------------------------------


TAG: QTP

 

评分:0

我来说两句

日历

« 2024-05-03  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 10424
  • 日志数: 17
  • 文件数: 1
  • 建立时间: 2008-12-11
  • 更新时间: 2009-06-19

RSS订阅

Open Toolbar