如何在qtp中访问运行时对象?
我们有一个函数可以访问标准 Windows 应用程序中的两种类型的控件,例如按钮和列表框。该函数仅使用控件名称作为参数,因此 qtp 无法理解它是什么类型的控件。如何解决这个问题?编写 2 个独立的函数 - 1 个用于按钮和一个另一个列表框?
We have a function which accesses two types of controls like button and list box in standard windows app. The function uses only the control name as arguments, so there is no way qtp could understand what type of control it is. how to resolve this? Write 2 separate functions- 1 for button & another for list box?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这取决于您想要对对象执行什么操作,如果您想要执行所有
WinObjects
通用的操作(例如Click
或GetROProperty
)你可以这样做,如果它特定于不同的测试对象,你将必须有不同的方法(或者至少在内部以不同的方式对待它)科学模式下的 Calc.exe 示例:
运行后结果是
10
(八进制中的 8)另一种方法是使用
ChildObjects
来获取与此属性匹配的所有对象(在本例中是一个),检查什么它的对象类型 (GetROProperty("micclass")
) 并打开它来执行您的特定操作。It depends what you want to do with the object, if you want to do something that is common to all
WinObjects
(e.g.Click
orGetROProperty
) you can do that, if it's specific to different test objects you'll have to have different methods (or at least treat it differently internally)Example for Calc.exe in scientific mode:
After running the result is
10
(8 in octal)Another way to do this would be to use
ChildObjects
in order to get all the objects that match this property (in this case one), check what type of object it is (GetROProperty("micclass")
) and switch on that to perform your specific actions.