51Testing软件测试论坛

标题: 关于qtp 虚拟对象与描述性编程的问题 [打印本页]

作者: ERIC0301    时间: 2008-9-9 17:21
标题: 关于qtp 虚拟对象与描述性编程的问题
各位XDJM,qtp 能不能对虚拟对象进行描述性编程?
另外此次主要是无法用描述性编程来写 DELPHI的日期控件 对象,才想到用虚拟对象,但发现还是有点问题,大家有没有什么好的建议
作者: lantianwei    时间: 2008-9-10 10:23
既然用到了虚拟对象(VO) 就没有必要用DP了
可以用DP,就根本没有必要用VO
日期控件可以强制写值:object.value="你的值"
作者: ERIC0301    时间: 2008-9-10 11:36
录的脚本为:
Browser("自动化测试系统").Page("自动化测试系统_2").Frame("ccms_operate_iframe").ActiveX("DateTimeEditX Control").WinObject("2008-09-09").Type "20081111"
请问这个是怎么赋值,这个与普通的文本框不一样,这个是OCX控件,另楼上有没有QQ我加你下
作者: lantianwei    时间: 2008-9-10 11:39
Browser("自动化测试系统").Page("自动化测试系统_2").Frame("ccms_operate_iframe").ActiveX("DateTimeEditX Control").WinObject("2008-09-09").object.value= "20081111"
have a try, my QQ is 236835793, but i am always off-line before 9PM

[ 本帖最后由 lantianwei 于 2008-9-10 11:42 编辑 ]
作者: 假装不在    时间: 2008-9-10 11:53
原帖由 lantianwei 于 2008-9-10 10:23 发表
既然用到了虚拟对象(VO) 就没有必要用DP了
可以用DP,就根本没有必要用VO
日期控件可以强制写值:object.value="你的值"


很精辟的回答

我估计是楼主想要把虚拟出来的对象用非录制的方法写出来。
作者: ERIC0301    时间: 2008-9-10 14:16
呵呵,是的,发现虚拟对象不好用,太个性了,还是要用描述性编程
Browser("自动化测试系统").Page("自动化测试系统").Frame("ccms_operate_iframe").ActiveX("DateTimeEditX Control_2").WinObject("2008-09-10").Click '61,4
Browser("自动化测试系统").Page("自动化测试系统").Frame("ccms_operate_iframe").ActiveX("DateTimeEditX Control_2").WinObject("2008-09-10").Type micShiftDwn +  micHome  + micShiftUp
Browser("自动化测试系统").Page("自动化测试系统").Frame("ccms_operate_iframe").ActiveX("DateTimeEditX Control_2").WinObject("2008-09-10").Type "20081112"
这个是如何描述性编程,发现一描述性就报错,用object.value提示 对象不支持此属性或方法
Browser("title:=自动化测试系统").Page("title:=自动化测试系统").Frame("name:=ccms_operate_iframe").ActiveX("progid:=DateTimeEdit.DateTimeEditX").WinObject("regexpwndclass:=TwwDBDateTimePicker").object.value "20081112"
作者: lantianwei    时间: 2008-9-10 15:00
因为是WIN对象,所以导致直接附值会失败
解决方法:
A. 找到唯一属性
B. 键盘模拟
作者: ERIC0301    时间: 2008-9-12 10:04
哈,问题终于搞定了,惟一值是个不错的途径




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