51Testing软件测试论坛

标题: 将时间参数化的问题引发的SetTOProperty"value”, object.value,set的区别? [打印本页]

作者: yuner    时间: 2006-2-23 16:13
标题: 将时间参数化的问题引发的SetTOProperty"value”, object.value,set的区别?
如附件图所示
我想把“参加工作时间”参数化,于是尝试使用如下语句把 start_work_date的value值设置成我所想要的数值
Browser("×××").Page("×××").Frame("×××").WebEdit("start_work_date").SetTOProperty"value","2006-02-23"
msgbox Browser("×××").Page("×××").Frame("×××").WebEdit("start_work_date").GetTOProperty("value")

运行脚本,在msgbox中提示的信息中显示value值正是我所想要的数值2006-02-23,但是发现参加工作时间的
值仍是我添加这个对象的初始值(2006-02-02),并没有改变,为什么呢?

注:
1WebEdit("start_work_date")这个对象是录制完成后添加的,且是只读的
2 曾经尝试使用这条语句 Browser("×××").Page("×××").Frame("×××").WebEdit("start_work_date").Set "2006-02-23", 运行时提示Object is disabled
3 选择工作时间的控件是js的,(本想通过选择时间页面来选择时间,但是想不到如何选择自己所要的时间,于是才想到将start_work_date的value值参数化)

[ 本帖最后由 yuner 于 2006-2-24 11:31 编辑 ]
作者: sz_lg    时间: 2006-2-23 17:20
你试试 Browser("×××").Page("×××").Frame("×××").WebEdit("start_work_date").object.value="2006-02-23"
作者: yuner    时间: 2006-2-24 11:33
终于发现了我测试的这个start_work_date对象不能用set方法的原因,因为它是只读的,我把程序代码中的只读属性去掉,就可以使用set方法。
       谢谢sz_lg,使用object.value果然可以成功,比我改代码的方法方便多了,^_^
       即使我把只读属性去掉,但是用SetTOProperty"value”仍然不可以成功
由以上几点,产生了一个问题

就是SetTOProperty"value”, object.value,set到底有何区别呢?
help的说明如下
object :Accesses the internal methods and properties of the object.
Set:Sets the text inside the edit box.
SetTOProperty: Sets the value of the specified property in the test object description.
但是我还是不理解,internal properties  internal是怎样的呢?specified property又是怎样的呢?大家能否举个实例说明一下用三种方法的区别?以及应该什么时候使用什么方法呢?

[ 本帖最后由 yuner 于 2006-2-24 11:35 编辑 ]
作者: Horus_Ra    时间: 2006-2-24 11:48
Browser("×××").Page("×××").Frame("×××").WebEdit("start_work_date").Set "2006-02-23"
这句话应该没错,而且是最简单的方法,为什么会报Disable??你这个输入框是可以直接输入日期的吗?还是要点旁边那个东西选择日期?
作者: yuner    时间: 2006-2-24 12:56
re:Horus_Ra  我的输入框是只读的,需要点旁边的图片来选择日期。用set方法报错的原因可能是因为它是只读的,我把只读属性改掉,就不报错了。
作者: Horus_Ra    时间: 2006-2-24 13:07
那么你点旁边那东西的时候,出现的是什么框?
作者: gotesting    时间: 2006-4-13 17:31
我想请问,这个时候怎么对日期字段输入值进行参数化呢?日期字段输入框是只读的,通过日期控件进行选择。。。。
作者: gotesting    时间: 2006-4-13 17:39
自己试了一下,总算知道解决方法了Browser("xxx").Page("xxx").WebEdit("MyDate").Object.value=DataTable("Date1", dtLocalSheet)

好开心,总算解决了头大了一天的问题。。。:D

谢谢斑竹的帖子
作者: xxt5353641    时间: 2009-12-7 18:54
学习了,今天也遇到这个问题,也是照楼主的方法,先修改程序,发现无错,然后改程序后,出同样的问题。参考楼主的解决办法,将此问题解决了!




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