limin199 2007-7-26 02:44
关于使用了数据驱动导致内存无法释放的问题
sdlkfj9 sdlkfj9 请教:
本人使用的是SILKTEST 来做WEB 应用程序的功能自动测试,
用数据驱动来导入数据,可是数据源在自动进行读取时,内存不释放,
导致在读入数据源一段时间后,内存溢出,TEST自动报错,
请问有什么方法解决!
jmy_1981 2007-7-26 17:03
可以贴个出错信息吗?
/* 参考答案 */
P.S: lz给个图,或者出错信息看看好吗?
你可以从下面几个方向考虑:
1. SilkTest, 你用的版本是多少?我知道2006 R2在agent上是有问题的(不支持超过4G内存),你需要打到SP1。
2. IE,IE7是一个很有问题的浏览器,我用过的不但是Silk,QTP、WinRunner什么的很多API在IE7上会有内存洞的。
3. Data Driven,你起ODBC是走那个的,SQL,Excel还是Access。是SQL的话无解,等新的Silk的Add-in,如果是Excel或者是Access的,起个Dos Command把ODBC调通。
4. .Net Framework,如果1.1 的话是有问题的,这个是Windows的接口上不好,换2.0或者后面的版本试试。
你可以试试SYS_GetMemoryInfo() 前后给一个时钟,把内存拍出来看看,断点在那里。或者换台机器,换个操作系统试试。
希望有帮助。
limin199 2007-7-27 13:47
你好,我使用的是Silktest2006,IE6.0
下面是我在使用了Db_CONNECT 以及DB_EXECUTE和没使用的数据脚本.
数据源是ACCESS的.
没使用让SILKTEST直接内部调用的部分脚本:
[ ] X公司电力营销管理信息系统.业扩用户信息电力营销管理信息系统PSMIS.基本信息申请编号总户号报装来源柜台网上报装.用电地址.SetText(rData.rec100kW及以上.用电地址)
[-] if(rData.rec100kW及以上.行业号==null)
[ ] sleep(0.1)
[-] else
[ ] X公司电力营销管理信息系统.业扩用户信息电力营销管理信息系统PSMIS.基本信息申请编号总户号报装来源柜台网上报装.行业号.Click ()
[ ] 选择行业号信息网页对话框.选择行业号信息.SetActive ()
[ ] 选择行业号信息网页对话框.选择行业号信息.行业编码列表电力营销管理信息系统PSMIS.N7IY0100城乡用电8IY0200乡村用电10IA.N24IB10205非金属矿采选业.Click ()
[ ] 选择行业号信息网页对话框.选择行业号信息.行业编码列表电力营销管理信息系统PSMIS.N7IY0100城乡用电8IY0200乡村用电10IA.N24IB10205非金属矿采选业.DoubleClick (1, 217, 9)
[ ] X公司电力营销管理信息系统.SetActive( )
[ ]
[ ] X公司电力营销管理信息系统.业扩用户信息电力营销管理信息系统PSMIS.基本信息申请编号总户号报装来源柜台网上报装.联系人.SetText(rData.rec100kW及以上.联系人)
[ ] X公司电力营销管理信息系统.业扩用户信息电力营销管理信息系统PSMIS.基本信息申请编号总户号报装来源柜台网上报装.身份证.SetText(rData.rec100kW及以上.身份证)
[ ] X公司电力营销管理信息系统.业扩用户信息电力营销管理信息系统PSMIS.基本信息申请编号总户号报装来源柜台网上报装.联系电话.SetText(rData.rec100kW及以上.联系电话)
[-] if(rData.rec100kW及以上.移动电话==null)
[ ] X公司电力营销管理信息系统.业扩用户信息电力营销管理信息系统PSMIS.基本信息申请编号总户号报装来源柜台网上报装.移动电话.SetText("")
[-] else
[ ] X公司电力营销管理信息系统.业扩用户信息电力营销管理信息系统PSMIS.基本信息申请编号总户号报装来源柜台网上报装.移动电话.SetText(rData.rec100kW及以上.联系电话)
[-] if(rData.rec100kW及以上.联系地址==null)
[ ] X公司电力营销管理信息系统.业扩用户信息电力营销管理信息系统PSMIS.基本信息申请编号总户号报装来源柜台网上报装.联系地址.SetText("")
[-] else
[ ] X公司电力营销管理信息系统.业扩用户信息电力营销管理信息系统PSMIS.基本信息申请编号总户号报装来源柜台网上报装.联系地址.SetText(rData.rec100kW及以上.联系地址)
[-] if(rData.rec100kW及以上.传真电话==null)
[ ] X公司电力营销管理信息系统.业扩用户信息电力营销管理信息系统PSMIS.基本信息申请编号总户号报装来源柜台网上报装.传真号码.SetText("")
[-] else
[ ] X公司电力营销管理信息系统.业扩用户信息电力营销管理信息系统PSMIS.基本信息申请编号总户号报装来源柜台网上报装.传真号码.SetText(rData.rec100kW及以上.传真电话)
[ ]
[-] if(rData.rec100kW及以上.EMAIL==null)
[ ] X公司电力营销管理信息系统.业扩用户信息电力营销管理信息系统PSMIS.基本信息申请编号总户号报装来源柜台网上报装.EMAIL.SetText("")
[-] else
[ ] X公司电力营销管理信息系统.业扩用户信息电力营销管理信息系统PSMIS.基本信息申请编号总户号报装来源柜台网上报装.EMAIL.SetText(rData.rec100kW及以上.EMAIL)
........................................................
limin199 2007-7-27 13:56
使用了的部分脚本
[ ] handle fhdb,fstmnt
[ ] string id,priority,filed,company,name,eleaddress,tradeid,commun,idcard,phone,mbphone,address,traphone,emal,friname,rpayid,installcontent,voltage,elerequest
[ ] string sqlcommand="select 编号,优先级 ,档案袋号, 所属单位,用户名,用电地址,行业号,联系人,身份证,联系电话,移动电话,联系地址,传真电话,EMAIL,法人姓名,纳税号,报装容量,供电电压,用电需求说明 from 100kW及以上番禺20060601 "
[ ] fhdb=DB_connect("DSN=YK;UID=;PWD=;")
[ ]
[ ]
[ ] fstmnt=DB_ExecuteSql(fhdb,sqlcommand)
[ ]
[-] if(DB_FetchNext(fstmnt,id,priority,filed,company,name,eleaddress,tradeid,commun,idcard,phone,mbphone,address,traphone,emal,friname,rpayid,installcontent,voltage,elerequest))
[ ] print("try release id,priority,filed,company,name,eleaddress,tradeid,commun,idcard,phone,mbphone,address,traphone,emal,friname,rpayid,installcontent,voltage,elerequest")
.............................................
[ ]
[ ] DB_FinishSql(fhdb)
[ ]
[ ] DB_Disconnect(fstmnt)
limin199 2007-7-27 14:03
不知道怎么把图占上来,
就是资源管理器性能哪里的PF 使用率满的时候,
会出现网页页面无法找等,一系列随即的问题....
把所测网页关了在开,就可以了,
也就是现在无法达到真正的全自动,总还得有人守着!
jmy_1981 2007-7-30 15:34
代码看上去像是对的,有问题的时候起个dll把IE杀掉行吗?
如题?