使用 UIAutomation 的仪器出现意外错误
Posted
技术标签:
【中文标题】使用 UIAutomation 的仪器出现意外错误【英文标题】:Unexpected Error in Instruments using UIAutomation 【发布时间】:2010-08-20 18:26:50 【问题描述】:我目前正在使用 ios SDK 4.0.2 并学习如何做 UIAutomation。不幸的是,我发现在模拟器中,当我尝试运行一个简单的 Java 脚本测试(仅分配变量)时,我收到以下错误。
Unexpected error in -[UIATarget_0x5d04f60 frontMostApp], /SourceCache/UIAutomation_Sim/UIAutomation-37/Framework/UIATargetElements.m line 437,
这是我试图运行的“脚本”
function iDontDoAnything()
var target = UIATarget.localTarget();
var app = target.frontMostApp();
var navBar = app.navigationBar();
UIALogger.logPass("it passed");
UIALogger.logStart("First Tester Test");
iDontDoAnything();
我发现这是因为我在调用 frontMostApp() 时返回了一个空值。测试在 4.0.2 的实际设备上运行良好/通过。
主要问题:有没有办法在模拟器上解决 4.0.2 中的这个问题?我已经注意到存在此问题的早期版本 (4.0.1) 的解决方案 - 尝试过但没有成功。
目前还没有太多文档,任何建议将不胜感激!
劳伦
【问题讨论】:
我将其标记为 Can we use UI Automation tools with the iPhone Simulator? 的副本,因为我刚刚尝试了那里列出的解决方案,它适用于 4.0.2。需要记得把属性列表复制到4.0.2模拟器目录下,然后重启模拟器。 谢谢——我以为我试过了,但一定是把它复制到了错误的目录。 【参考方案1】:你检查模拟器是否有accessibity.plist?
我在https://devforums.apple.com/message/261883#261883 上找到了这个,他们推荐:“将 ~/Library/Application Support/iPhone Simulator/4.0/Library/Preferences/com.apple.Accessibility.plist 复制到 ~/Library/Application Support/iPhone Simulator/4.0 .1/Library/Preferences”,它对我有用。
【讨论】:
以上是关于使用 UIAutomation 的仪器出现意外错误的主要内容,如果未能解决你的问题,请参考以下文章
Xcode 5.0.1 iOS 7.0.3 仪器命令行工具出错
即使在应用退出后,如何使用 UIAutomation 工具继续测试 iOS 应用?
从Silverlight 4调用Communicator.UIAutomation