当我尝试将任何对象从网站添加到本地对象存储库时,这是不可能的,因为每个对象都显示相同的属性。所以对于描述性编程,很难提及属性值。
问问题
2665 次
2 回答
0
Kus,QTP 11 有一个称为Visual Relation Identifiers的功能。通过名称本身,它可以帮助您识别对象,基于它们与屏幕中其他对象的视觉接近程度,而不是它们的实际属性。这是针对 AUT 中的对象彼此非常相似的情况的补救措施。
此功能在“定义新测试对象”窗口下可用。
更新:
由于您绑定到 QTP 10,我建议使用location或ordinal identifiers。这里的想法是,即使您有 3 个完全相同的对象,它们至少会出现在屏幕上的不同位置,并且 QTP 可以使用该顺序来识别您要对哪个对象进行操作。它从左到右读取。
假设您有 3 个名为“inputField”的文本框,您可以通过以下方式识别它们:
.WebEdit("name:=inputField","location:=0").Set "1stTextBox"
.WebEdit("name:=inputField","location:=1").Set "2ndTextBox"
.WebEdit("name:=inputField","location:=2").Set "3rdTextBox"
在此链接中阅读更多信息:Ordinal Identifiers Demo。
于 2013-07-04T15:19:53.877 回答
0
如果每个对象都显示相同的属性,则 qtp 无法正确识别任一应用程序,或者您没有选择正确的加载项。
例如,如果没有自定义,qtp 无法识别 flex 应用程序,并且 qtp 会将所有对象作为 MacromediaFlashPlayer 对象。
于 2013-07-02T15:43:53.497 回答