lq860724 发表于 2014-5-21 10:05:43

QTP运行一段时间后,不能定位目标窗口

本帖最后由 lq860724 于 2014-5-22 11:13 编辑

项目中,写了一个脚本,进行处理大批量的数据。
主要流程如下:
大批数据(Excel输入)- 目标程序逐行处理该数据 - 给出结果,如果处理成功,在结果文件(Excel)中标记为pass;如果处理失败,则在结果文件中标记为fail。

现在出现的问题是:
开始跑了十来个小时后,查看结果文件,结果正常,每条记录都标记为pass或者fail。
但是之后就会出现一大片(时间为1个多小时)的空白结果。
执行的时候,QTP设置为: File - Setting - Run, proceed to next action iteration, 而不是pop up message box.

想确认下,QTP会不会出现,跑了很久以后,因为干扰或者QTP自身问题而不能识别对象,所以出现上述现象?还是因为跑久了,影响了目标程序或者系统的性能?
如果是脚本的问题,那前面跑的十多个小时为什么没出现问题?

大家有没有碰到过类似的问题,怎么解决的?谢谢!
--------------------------2014/5/22 更新--------------------------------------
测试结果出现空白,从QTP 的report中可以看到,是因为QTP找不到目标窗口了。

能否在Window("Main Window").Type操作前添加能够让QTP确定找到这个window? 再次求助,有没有遇到类似QTP会偶然出现不能定位窗口的情况?谢谢!
出现情况的代码如下:

If Window("Main Window").Exist(10) Then



'点击Main Window菜单中的Open选项
----从reporter来看,应该是运行了一段时间后,这步操作没有成功,所以后面的目标Dialog没有出现,从而导致QTP Error

Window("Main Window").Type micAltDwn + "%F"+ "%O" + micAltUp



If Window("Main Window").Dialog("Advanced Search").Exist(2) Then

Window("Main Window").Dialog("Advanced Search").WinButton("Condensed").Click

End If



'Wait to open the dialog "Condensed Search"

If Window("Main Window").Dialog("Search").WinButton("Clear").Exist(10) Then

Window("Main Window").Dialog("Search").WinButton("Clear").Click

End If



Wait(1)

Window("Main Window").Dialog("Search").WinCheckBox("Show Policies").Set "ON"

Window("Main Window").Dialog("Search").WinEdit("Policy Number:").Set DataTable("POLICY_NUMBER", dtGlobalSheet)

Window("Main Window").Dialog("Search").WinButton("Refresh").Click

Wait(1)

Window("Main Window").Dialog("Search").WinButton("Edit").Click


......

赵佳乐SMILE 发表于 2014-5-22 08:58:42

如果能看见空白的结果 我觉得 你可以单独拉一些空白结果的数据出来跑 看看是否能复现

lq860724 发表于 2014-5-22 11:00:05

回复 2# 赵佳乐SMILE
谢谢~现在 主要问题就是这种情况出现得很偶然,很难重现。。。
页: [1]
查看完整版本: QTP运行一段时间后,不能定位目标窗口