我不知道QuerySelector方法是如何工作的。我在SmartBear帮助中看过一些示例,但我的应用程序遇到了问题。我认为它的工作方式与Find方法相同。
例如,当我想要映射标签时,Find方法的工作方式如下:
warningLabel= webPagePanel.Find("objectIdentifier", "MainContent_NotificationText", 100, true);
当我尝试使用QuerySelector方法映射同一个对象时,它不起作用:
warningLabel= webPagePanel.QuerySelector("#MainContent_NotificationText");
我尝试在上面的QuerySelector行之后使用QuerySelector warningLabel(例如,warningLabel.Click
),然后测试失败并且日志显示" Object Required"。显然它没有找到我的对象
我做错了什么?我如何使用QuerySelector方法进行标签的简单映射,如上所示?有问题的标签有以下HTML。
INPUT "name=ctl00$MainContent$NotificationText" id="MainContent_NotificationText" type=hidden value="To save a partial filter set for this report, the required fields identified above must not be blank."
答案 0 :(得分:2)
您尝试查找的对象是不可见的(输入...类型=" 隐藏" ...)并且TestComplete不会在其对象树中显示不可见对象。如果您只需要获取此隐藏框的值,则可以使用querySelector方法的本机版本:
var warningLabel_Native = webPagePanel.contentDocument.querySelector("#MainContent_NotificationText");
Log.Message(warningLabel_Native.value);
在这种情况下,您将获得没有TestComplete特定成员的本机对象,如Click(),Find(),VisibleOnScreen等。但是,所有本机功能都可供您使用。