1
我想獲取一個對象的文本屬性。在這種情況下,我採取了記事本,並試圖通過下面的代碼片段獲取屬性。但我的問題是我能夠獲得所有的屬性,包括屬性的值是一個對象。我可以如何限制相同?如何僅獲取測試對象中的文本屬性?
片段去如下:
Public Function Object_getObjectProperties(oInteraction)
Set props = aqObject.GetProperties(oInteraction.guiObject, false)
sProperties = ""
While props.HasNext
Set prop = props.Next
If(sProperties<>"") Then
sProperties = sProperties + INSTRUCTION_VALUE_SEPARATOR + prop.Name
Else
sProperties = prop.name
End If
Wend
Object_getObjectProperties = sProperties
End Function
這是工作的所有情況除了一個,其中我的屬性是PopupMenu和它的值是一個空對象,所以當我嘗試調用aqObject.GetVarType(屬性的值)顯示-Pop up無法獲得,可能的原因:沒有點擊調用彈出式菜單。 我已經把這樣一個檢查點: 如果(aqObject.GetVarType(prop.value)<> 9)然後 「不要將它們包括在我的列表中」,這裏9是對象的返回碼。 –
我想出了一種方法來解決這個問題。而不是GetVarType我使用Object.ValueType來獲取屬性的數據類型。所以爲了從我的屬性列表中篩選出對象,我正在驗證它與一個具有整數這樣的值爲9。 If(prop.ValueType <> 9)Then 如果不是9,則添加屬性。 解決問題的方法是否正確?我參考了上面提出的解決方案的鏈接。 https://support.smartbear.com/testcomplete/docs/reference/program-objects/aqobjproperty/valuetype.html –