我在 UIAutomation 中面临这个奇怪的问题。
我正在检查警报。在其中,我试图记录警报标题和警报消息。我的代码是:
UIATarget.onAlert = function onAlert(alert) {
UIALogger.logMessage("alert Shown");
UIALogger.logMessage(frontApp.alert().name());
UIALogger.logMessage(frontApp.alert().staticTexts()[1].value());
}
var target = UIATarget.localTarget().frontMostApp().mainWindow();
target.scrollViews()[0].buttons()["saveB"].tap();
UIATarget.localTarget().delay(2);
我没有点击警报中的取消按钮来关闭它。但是,它会被自动利用。我不知道为什么。即使在日志消息中,我也看到
target.frontMostApp().alert().cancelButton().tap()
该行会自动执行。我的脚本文件中的任何地方都没有这一行。这是 iOS 中的一个错误吗?
始终点击警报上的取消按钮以防止应用程序被阻止unless the onAlert
回调返回true
。通过返回true
,你告诉警报处理机制you将处理点击适当的按钮来消除警报。
将警报回调更改为如下所示:
UIATarget.onAlert = function onAlert(alert) {
UIALogger.logMessage("alert Shown");
UIALogger.logMessage(frontApp.alert().name());
UIALogger.logMessage(frontApp.alert().staticTexts()[1].value());
return true; // <-- Adding this line
}
反之,返回false
或者完全省略返回值,向警报处理机制发出应该点击取消按钮的信号。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)