1

我正在尝试在我的设备/iPhone 4 上使用 ui 自动化脚本运行。

我尝试了几种设置都没有成功,我不确定我是谁了:(

构建选项

Validate Built Product: Ad Hoc - Yes, Debug - No, Release - Yes.

代码签名

Ad Hoc - Entitlements.plist - can be debugged - no
Debug - Entitlement-Debug.plist - get-task-allow - yes
Release - Entitlements.plist - can be debugged - no

代码签名身份

Ad Hoc - iPhone Developer
Debug - Don't have set
Release - iPhone Distribution

简介方案

Build Configuration - Release
Pre - Actions - None
Post - action - None

显然所有这些设置都可能没有错,但我想要一些验证。

我实际上遇到了一个错误

The executable was signed with invalid entitlements

但是,我不认为这是我唯一的问题。

4

1 回答 1

1

为了进行 UI 自动化测试,bundle 必须是开发人员签名的。因此,您需要iPhone Developer:为“调试”配置设置代码签名标识,并将该配置用于 UI 自动化测试。Instruments 也需要附加到您正在运行的进程(即它需要get-task-allow),这就是您应该在您的情况下使用 Debug 配置的原因。请注意,您还可以使用发布设置创建新的构建配置,但包括get-task-allow.

我强烈建议accessibilityIdentifier在所有 UI 元素上使用该属性来识别它们,并使用它来查找 UIA 测试脚本中的元素。这样,您accessibilityLabel仍然可以用于(和本地化)实际可访问性。

于 2012-11-14T21:30:18.597 回答