问题标签 [xcode-instruments]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
606 浏览

xcode - 通过 Jenkins 运行 UI 自动化

我在 Jenkins 的“执行 shell”命令中添加了一个 perl 脚本。这个 perl 脚本通过命令行启动 Instruments,运行 js 测试(我们使用 tuneup_js 框架)。当脚本统计其中一项测试时,jenkins 控制台输出与仪器输出的完全不同。有关 Jenkins 控制台给出的输出,请参见下文:

我可以看到测试在模拟器上完美运行。如果我通过 Instruments 运行相同的测试,我的输出将类似于:

我想要控制台的输出类似于上面的输出。这可能吗?

0 投票
0 回答
415 浏览

xcode - CALayer 渲染导致带有 OSX 10.7.4 的新 MacBook Pro 上的内存泄漏

在使用 CALayer 渲染开发 Mac OSX 应用程序时,我们发现 Apple 官方示例代码 'CALayerEssentials' 可能会导致装有 OSX 10.7.4 的新 MacBook Pro(2012 年中 15' Retina)上的内存泄漏。

内存泄漏一般描述:

  1. 使用 Xcode 运行“CALayerEssentials”项目;(你可以在 Xcode Organizer -> OS X 10.7 Core Library -> Graphics & Animation -> Animation -> CALayerEssentials 下找到这个项目)
  2. 打开 Instruments Leaks 模板,并附加到 CALayerEssentials 进程 ID;
  3. 开始记录,Leaks 会提示大约每 10 秒发生一次内存泄漏;
  4. 在 Leaks Object 面板中,有一个项目 'Malloc 48 Bytes' 随着计数和内存大小的增加;
  5. 大约 15 分钟后,泄漏大小将增加到大约 2.48 MB;
  6. 大约 78 分钟后,泄漏大小将增加到大约 23.54 MB;
  7. 通过检查 vmmap 结果地址区域中的泄漏地址,表明所有地址都与 QuartzCore_0x6bb2a800 有关,如下行:

MALLOC_OTHER 086af000-086d1000 [ 136K] rw-/rwx SM=COW QuartzCore_0x6bb2a800

这是运行 CALayerEssentials 并监控其内存泄漏的屏幕截图:http: //smartsweetie.com/uploads/screenshot1.png

这是内存泄漏机器系统配置:

  • 机器:MacBook Pro(2012 年中,15' Retina)
  • 处理器:2.3 GHz 英特尔
  • 酷睿 i7 内存:8 GB 1600 MHz DDR3
  • 显卡:NVIDIA GeForce GT 650M 1024 MB
  • 软件:Mac OS X Lion 10.7.4 (11E2620)

但是,在其他机器上运行相同的 CALayerEssentials 不会有 CALayer 内存泄漏问题。

  • 机器:MacBook Pro(2011 年末,15')
  • 处理器:2.2 GHz 英特尔酷睿 i7
  • 内存:4 GB 1333 MHz DDR3
  • 显卡:AMD Radeon HD 6750M 512 MB
  • 软件:Mac OS X Lion 10.7.4 (11E53)

装有 OS X 10.7.4 的新 MacBook Pro 上的 CALayer 内存泄漏是否存在任何已知问题?或者有什么建议可以进一步调查这个问题?

0 投票
1 回答
744 浏览

python - 如何从 Python 运行 Instruments?

有人知道如何从 Python 运行 Instruments 吗?我厌倦了使用 os.system 并且它不起作用。

如果我从命令行运行 Instruments,我只需要运行:

我将需要在 python 中运行上述内容。我想以下将起作用

我也试过 os.system ('open -a instruments xxxxxx')

两种方法都没有奏效。有人有更好的主意吗?

我希望它能够像从命令行运行它一样运行仪器。并开始使用仪器运行 javascritps。它没有发生。所发生的只是打印出来的 256。

0 投票
0 回答
92 浏览

ios - 在没有应用程序源代码的情况下使用 Instruments 测试 iOS 应用程序

可能重复:
在没有应用程序源代码的情况下使用 Instruments 测试 iOS 应用程序

我想通过 XCode Instruments 工具为原生和 Web iOS 应用程序(在 iPad 设备或 iPad 模拟器上)进行 UI 自动化测试。没有应用程序源代码。在这种情况下,如何将 Instruments Automation 模板与真实设备和模拟器一起使用?

详细信息:我可以选择产品>配置文件为仪器选择目标,同时打开一些XCode项目,但在有源代码的情况下很有用。也许我必须创建一些特定的项目来运行模拟器并留在主页上?但是从仪器中,我既不能选择真实设备(它已列出,但已禁用 - 用浅灰色着色)也不能选择模拟器(它提示从 Mac 书中选择一些应用程序)。是否有可能在没有源代码的情况下通过 Instruments 在 iOS 模拟器上进行 UI 自动化测试?

我需要让 iOS 模拟器/真实设备准备好为其编写 UI 自动化测试。

0 投票
1 回答
266 浏览

memory - 应用程序占用太多内存直到崩溃!(苹果手机)

我是开发的初学者,我正在制作一个有大约 150 个 ViewControllers 的应用程序!每个都有一个 UIImageView。

我一直在做一些测试,在 iPhone 上使用该应用程序一段时间后,当我继续查看 ViewControllers 时它会崩溃。

我一直在仪器中对此进行分析,并且没有泄漏,但是我的内存分配不断增加,当我继续在 iPhone 上查看 ViewControllers 时,使用量只会不断增加直到崩溃。

我认为很明显它正在崩溃,因为该应用程序只是占用了太多内存。

那么任何人都可以解释如何释放视图控制器以释放内存,这样就不会发生崩溃

提前致谢 !

0 投票
0 回答
223 浏览

xcode-instruments - 使用 javascripts 的 UI 自动化 Xcode 工具

我正在使用 Xcode 工具进行 UI 自动化,任何人都可以帮助我如何删除扩展详细信息窗格中显示的其他信息,这些信息通常包括对记录的探测器或事件的描述。相反,它应该只显示我在脚本中包含的记录器消息。

谢谢,维诺德K

0 投票
2 回答
2189 浏览

ios - 如何使用 Instruments UIAutomation 测试 iOS Web 应用程序

当我测试本机应用程序时,我可以选择目标(选择目标列表中列出的来自真实设备的应用程序;或者在模拟器的情况下 - 在应用程序项目中选择配置文件菜单项)。

但是如何为 Web 应用程序选择目标?

在这种情况下,我是否必须选择某个浏览器作为目标?设备有 Safari 和 Chrome 浏览器。Chrome 浏览器出现在目标列表中。但是当我尝试运行脚本时,它不起作用。Chrome 刚刚启动,但会执行任何操作。

我还尝试创建只需在浏览器中打开网页的 XCode 项目。但是当我尝试运行脚本时出现“目标应用程序不是最前面的”错误。如果仪器选择目标列表中不存在这些应用程序,是否有可能选择设备上安装的应用程序作为目标?设备主页上有指向 Web 应用程序的链接。我可以以某种方式选择它作为目标吗?在 Organizer(从 XCode 调用)中,仅显示一个 - 本机应用程序。

0 投票
1 回答
676 浏览

xcode - 在 Xcode 4.5 中,为什么 Instruments 不再在符合条件的目标下显示我的应用程序?

这是发生的事情:

  1. 我通过 USB 将我的 iPad 连接到我的 devbox。
  2. 我启动了 Xcode 4.5,然后打开 Xcode>Open Developer Tool>Instruments。
  3. 我在选择目标下选择了我的 iPad。
  4. 然后我选择了一个模板——为了讨论,我们假设 Time Profiler。
  5. 然后我从 All Processes>Choose Target... 中选择我的应用程序(已经在我的 iPad 上加载)作为目标。
  6. 我记录了已检测的应用程序一段时间,然后停止记录。
  7. 我退出了 Instruments。

接下来,我重新启动了我的 Mac。我重新启动了 Xcode 4.5 和 Instruments。我按照上述步骤来检测我的应用程序。但猜猜怎么了?在所有进程>选择目标...下找不到我的应用程序?

我用另一个应用程序尝试了这个,看看在我的第一个分析会话期间我的第一个应用程序是否发生了异常情况。第二个应用程序也发生了同样的事情!现在,这两个应用程序都不会出现在我在设置 Instruments 录音时可以定位的合格应用程序列表下。

问题:

1 没有一些简单的方法可以将仪器重置为原始状态吗?

2 发生了什么事?特别是,Instruments 在哪里存档其分析数据?

我还没有阅读 Instruments 文档,所以先道歉。如果有人能快速回答,我将不胜感激。

0 投票
2 回答
140 浏览

ios - 仪器,iPhone应用程序分配增加

我正在使用 UIPageViewController 加载多个视图控制器。当我在 Instruments 工具中运行我的应用程序时。我发现分配正在向高利润转移。虽然我正在释放并使类对象为零。当我来回移动时,分配继续增加。我错过了什么?

请找到截图在此处输入图像描述

0 投票
2 回答
1704 浏览

ios - 使用 Instruments 工具中的分配

我正在使用 Instruments 工具来查找我的应用程序中的泄漏。在我的应用程序中检查泄漏时,我也可以看到分配选项卡。

到目前为止,我从未在工具工具中使用过该分配选项卡。我刚刚检查了它可能是什么,我能够看到#All Allocations * 字段。其中显示了应用程序使用的总字节数。我很震惊地看到尺寸不断增加。

我应该只担心内存泄漏而不是分配吗?#All 分配意味着当前应用程序大小或整体应用程序大小?