- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我有一个 iOS 应用程序,我想把它放在持续集成中。我使用的策略是尝试从命令行运行测试。
我正在尝试使用以下脚本来完成此操作:
TRACETEMPLATE="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Instruments/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate"
instruments -t $TRACETEMPLATE build/Release-iphonesimulator/MyApp.app -e UIACSCRIPT "UnitTests/SomeTest.js"
SomeTest.js 是一个简单的 javascript 文件,我可以在 Xcode 中的 Instrumentation 中运行它并且它可以工作。我使用以下方法构建我的应用程序:
xcodebuild -alltargets -sdk iphonesimulator5.1
这会生成 MyApp.app。我可以在模拟器中从 Xcode 运行该应用程序,但是,当我尝试通过仪器运行时,我收到一个框,提示存在未知错误,并在命令行中打印:
2012-05-15 15:32:59.928 instruments[17548:1d03] Recording cancelled : At least one target failed to launch; aborting run
Instruments Trace Error : Failed to start trace.
任何人都可以就可能发生的事情以及如何解决这个问题给我任何帮助/建议吗?
还有,它总是打开iPad模拟器?我可以让它打开我想要的任何模拟器吗?
最佳答案
我遇到了同样的错误,差点想解决这个问题。错误消息完全没有帮助。
对我来说最终成为问题的是我指向的 .app 文件。找到深埋在 5.1 Simulator 文件夹中的“正确”.app 文件后,我终于能够使用 Xcode 4.3 从命令行运行 UIAutomation 测试。
适用于我的 .app 的路径:
~/Library/Application\ Support/iPhone\ Simulator/5.1/Applications/{string-of-numbers-and-letters}/MyApp.app/
这是我使用 Xcode 4.3 从命令行运行 UIAutomation 测试的完整命令:
instruments -t /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Instruments/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate ~/Library/Application\ Support/iPhone\ Simulator/5.1/Applications/{string-of-numbers-and-letters}/MyApp.app/ -e UIASCRIPT /Path/To/TestFile.js
希望这对其他人有帮助,因为这方面的文档非常缺乏。
更新
请注意,从 Xcode 4.5.2 开始,自动化模板位置已从我原来的答案中更改:
/Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate
关于ios - 无法从命令行运行 UIAutomationTest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10606785/
我有一个 iOS 应用程序,我想把它放在持续集成中。我使用的策略是尝试从命令行运行测试。 我正在尝试使用以下脚本来完成此操作: TRACETEMPLATE="/Applications/Xcode.a
我是一名优秀的程序员,十分优秀!