gpt4 book ai didi

xcode - 如何让 UIAutomation、模拟器和 Xcode 调试器同时运行?

转载 作者:行者123 更新时间:2023-12-02 07:42:03 24 4
gpt4 key购买 nike

任何人都可以向我指出有关如何使 Instruments 运行 UIAutomation 脚本并使用在模拟器中运行的调试器启动 iPhone 应用程序的文档吗?

限制:我只有 iPhone 3g 硬件来测试和调试,而 UIAutomation 无法可靠地工作。通常,测试脚本只是运行以确保一切都通过,但现在存在一个奇怪的错误,只有在 UIAutomation 脚本运行时才会触发(这是一件好事)。手动操作无法重现该错误。无论如何,似乎没有办法将 Instruments UIAutomation 附加到模拟器中已运行的进程。没有选择。直接启动 Instruments UIAutomation 不会导致它与调试器一起启动。

我假设可以在仪器编辑事件目标(环境变量、参数、工作目录)中配置一些命令行魔术来实现这一点,但我还没有找到魔术段落。

谢谢,尼尔

最佳答案

这也让我困惑了一段时间——特别是当选择自动化仪器时,仪器应用程序明确表示当前仪器不允许附加。关键是要认识到在模拟器中运行的应用程序在主机系统中作为其自己的进程可见,因此直接从 GDB 附加效果很好。这些说明适用于 Snow Leopard 10.6.8 上的 XCode 4.2 (4C199):

  1. 按照您通常的方式在 Instruments 中开始测试(直接从 Instruments 或从 Xcode 4 的产品 -> 配置文件。选择任何模板和脚本来开始自动化测试。

  2. 返回 Xcode,在菜单Product -> Attach to Process 下,您应该会看到按名称列出的 iOS 应用程序,以及主机上的所有其他应用程序。事实上,它很可能会首先在节标题可能的目标下列出。

  3. 如果它不可见,请选择查看 -> 调试区域 -> 显示调试区域,以便您可以看到 gdb 控制台。

  4. 点击暂停按钮(产品 -> 调试 -> 暂停)来中断程序。像往常一样设置断点、检查。

那么下一个问题是:为什么我在调试器控制台中看不到正常的 NSLog() 输出?您的应用程序已将自身绑定(bind)到控制台输出流,因此查找其输出的最简单位置是在 OS X 控制台应用程序 (/Applications/Utilities/Console.app) 中,并在 DATABASE 下查找搜索 -> 所有消息

关于xcode - 如何让 UIAutomation、模拟器和 Xcode 调试器同时运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4472187/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com