TestComplete对象 - 枚举属性

Har*_*ari 3 testcomplete jscript

对于屏幕上的进程,窗口和控件的TestComplete对象 - 有没有一种方法可以枚举和打印出所有属性.我尝试了以下代码,我得到一个运行时异常: -

var deskObj = Sys.Desktop; //TC Desktop Object
var normObj = {a:1, b:2, c:3}; //Normal JScript Object

for (var prop in normObj) 
{
    Log.Message(normObj[prop]); //1, 2, 3 
}

for (var prop in deskObj) //Runtime error - Object doesn't support this action
{
    Log.Message(deskObj[prop]); 
}
Run Code Online (Sandbox Code Playgroud)

这让我相信TC Objects不是JScript对象 - 所以有没有办法将它们转换为JScript对象.

Dmi*_*aev 5

没错:来自Sys树的对象(对象浏览器中的对象树)是实际应用程序对象的特殊COM包装器.它们不是常见的JScript对象.

要获取此类TestComplete对象的属性和方法列表,可以使用aqObject对象的GetPropertiesGetMethods方法.您可以在相应的帮助主题中找到示例代码.