使用仪器记录用户操作

Posted

技术标签:

【中文标题】使用仪器记录用户操作【英文标题】:Recording User Actions using Instruments 【发布时间】:2011-05-11 14:59:12 【问题描述】:

我已经尝试了一段时间,但是有没有办法记录用户在 iphone/iphone 模拟器上的操作以使用 Instruments 进行测试?主要是我希望能够定位一个应用程序并记录我输入的任何用户输入,然后让它能够播放/获取数据。谢谢!

【问题讨论】:

【参考方案1】:

Instruments 中有 2 个选项:

1) 使用用户界面记录仪,记录用户的鼠标移动和点击,并允许回放这些。 (不幸的是,Phone Simulator 似乎不会将您的应用可访问性元素暴露给 UI 记录器)。

2) 使用 UIA 类在 javascript 中模拟与自动化工具的交互 - 对于为应用程序编写接口测试或模拟用户交互很有用。您可以在 Alex Vollmer 的 blogpost 中阅读有关使用自动化的介绍。

【讨论】:

谢谢!我知道用javascript模拟交互,但我只需要知道在使用模拟器时是否可以记录鼠标命令等。 不幸的是,我发现模拟器不提供 UI 记录器中的鼠标事件捕获,也不向它公开您的应用程序可访问性元素。所以你必须坚持通过脚本和自动化来模拟交互。 我注意到 UI 记录器有些奇怪,因为它不允许我在我的警报提示中输入文本(我会键入/单击文本按钮,但即使我按下回车键,记录的事件不起作用)。我可以用它来测试点击(我只有一个 tableView,我可以使用 UI Recorder 删除项目)。【参考方案2】:

FoneMonkey 是一个很有前途的第三方解决方案,我在最近的一个项目中使用它,虽然它并不完美,但它确实可以让您记录用户操作,回放它们等等。此外,它似乎是开源的,因此您可以根据需要自行扩展它。

ios 中也有UIAutomation framework,但我没有直接的经验。

【讨论】:

是的,主要是我在寻求 UIAutomation 框架的帮助,因为这是我必须使用的。不过谢谢!【参考方案3】:

正如 Roger 所说,您将不得不使用 UIAutomation 框架。 Apple 的文档应该可以帮助您到达需要去的地方。另外,看看this。

您必须用 JavaScript 编写自动化。我知道这很烦人,但是如果你面前有足够多的例子,你应该可以在一小时内学会它。

【讨论】:

我知道 javascript,主要是如何编写它,但我只是想知道我是否可以用仪器记录鼠标动作等。不过感谢您的链接,因为我也在学习使用 javascript 进行自动化。

以上是关于使用仪器记录用户操作的主要内容,如果未能解决你的问题,请参考以下文章

在 aws 上记录用户操作

权限管理禁止用户su - root并记录用户操作记录实验!

MySQL 使用触发器记录用户的操作日志

Linux 记录所有用户的操作记录

Linux下查看/管理当前登录用户及用户操作历史记录

Linux下查看/管理当前登录用户及用户操作历史记录