51Testing软件测试论坛

标题: 关于Browser SetFrame的问题!有经验人事进来谈下! [打印本页]

作者: bb64844866    时间: 2008-9-4 16:25
标题: 关于Browser SetFrame的问题!有经验人事进来谈下!
先说下我录制的脚本,功能超简单,就是在页面上的文本框上分别输入内容,就是这样一个操作回放都不成功!生成的代码如下:
Window setcontext,"caption={天*}",""
Browser setframe,"Type=HTMLFrame;HTMLId=pdmismain;\;Type=HTMLFrame;HTMLId=mainframe",""
Browser Newpage,"HTMLTitle=...;Index=0",""
EditBox click,"Type=EditBox;Name=...",""
inputkeys "..."
每次脚本回放错误都是停在红色这条语句上,也就是说在文本框单击的时候找不到这个文本框对象。。。(注:橙色那句即使注释掉了也是报错,除此之外我也试过在红色那句前加延时,也是无济于事。。。)
我之前发过这个问题,好象一直没有人解决。。。最近我去找开发人员翻开源代码后找到了些疑点,请各位有经验的人事一起来讨论下:)
这个系统比较特殊,由C#.net平台开发,而且使用了特殊的frame框架,表现为在IIS上发布这个系统的时候,需要发布两个文件夹后(分别叫做frame和cngdzc)才可以访问。而我在这两个文件夹里查找了robot录制生成的代码中的frame页,结果找到了这个路径下的cngdzc/gdzc_add/mainframe.aspx(对应robot里Browser setframe的Type=HTMLFrame;HTMLId=mainframe)页,而robot中Browser serframe的第一个Type=HTMLFrame;HTMLId=pdmismain中的pdmismain在上述两个文件夹下没有找到页面,后来发现是存在了frame/frameset/operate.cs(C#源文件)中,而这个.cs文件具体的代码如下:
if(null!=MakeSession())
{
SingleLogon ui=new SingleLogon(_dt_module.Rows[0]["MAKESESSION"].ToString());
ui.GetSendScript(_dt_module.Rows[0]["OPERATEPAGE"].ToString,"pdmismain");  //(大家注意看这里,用到了pdmismain)
}
这个问题很不好解决,因为看似生成的代码和普通的系统没有什么不同之处,但就是回放时候找不到对象,不知道问题到底出在哪里,如何解决,我感觉就是frame的问题,各位有经验的朋友多指教了!!!期待大家发表意见!

[ 本帖最后由 bb64844866 于 2008-9-4 16:28 编辑 ]
作者: bb64844866    时间: 2008-9-11 11:28
标题: 自己顶下:)
这个问题我开始可能没有表述太清楚,有些乱了。。。
这2天我突然发现问题的关键所在是使用Robot标题菜单下的Tools-Inspector(对象探测器)工具检测页面对象的时候,发现这个回放有问题的页面在对象探测器中根本就是Unknow,也就是说只检测出了Window对象(标题对应这个页面的title),但是点+(加号)展开的子对象菜单里没有HTML Documents对象。。。都是Unknow状态。。。所以造成对象未识别,回放失败。。。。。。
现在问题算是摸清楚了,但是疑问就是既然未识别,为什么录制的时候生成的代码中却有Browser SetFrame, "Type=...",""   ?
有经验的人事请发表意见了。。。。。。像这样的问题该如何解决呢?期待回复!
作者: 有零花钱的狗    时间: 2008-9-18 02:26
把这行屏蔽掉:
'   Browser Newpage,"HTMLTitle=...;Index=0",""
作者: bb64844866    时间: 2008-9-18 11:30
标题: 感谢3楼回复!
不过这个方法我已经试过,不是单纯的某条语句的问题,我怀疑就是架构的问题,这个系统太复杂了。。。发布的时候需要有好多个文件夹,frame的问题。使用Inspector无法探测到这个Edixbox,好多都是unknown像类似这样的架构的页面,由好多个frame拼凑而成的系统,该如何使用robot来解决?请高人们多发表下意见!




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2