0

有人可以帮我吗?

我有一个访问通讯录的 Objective C 应用程序;建立用户名、电子邮件 ID 和他们的照片的列表;使用列表将其显示在屏幕上。

我想使用 Instruments 自动测试这个功能。我想从屏幕上的 Tableview 中检索用户列表。这行得通。从这个列表中,我还获得了电子邮件 ID 和图片。我现在要做的是能够获取此联系人数据并根据联系人簿对其进行验证。但是,我看不到如何从 Javascript 调用 Objective C 函数。

提前致谢。

4

2 回答 2

1

有多种方法可以做到这一点,尽管我们正在努力确定最好的一种。候选人:

  • 您从 UIAutomation 插入的准隐藏文本字段,您的应用程序从中读取,执行操作,然后写回(或写入不同的)。缺点是 UIA 似乎试图对隐藏的文本字段变得聪明。但我确信有办法让它变得不那么聪明。
  • 在主机上运行并与应用程序上的侦听器通信以交换数据的网络服务器。设置痛苦,但保证工作。我们已经有了这个频道,因为我们在开发过程中使用 Nimbus 和 CSS/XML 以及运行时更新,所以它比大多数人更容易。
于 2013-10-08T14:58:18.553 回答
0

无法从 UI 自动化中的 JavaScript 调用 Objective-C 函数。该 JavaScript 运行时完全是沙盒化的。与应用程序通信的唯一方法是通过 UIAElement 脚本接口。

如果您正在寻找一种可以调用任意 Objective-C 对象的测试工具,您可能需要研究KIF。它您的应用程序中运行,并用 Objective-C 编写。

于 2013-09-02T12:39:06.173 回答