0

当我创建 UI 测试脚本时,我遇到了一个问题。我需要访问在目标 APP 文件夹下创建的日志文件。但是,UI 测试 APP 正在作为另一个线程运行。

 NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

该方法只能返回 UI Testing APP 文档的路径,不能返回目标应用。

有没有办法访问目标应用程序的文件夹?

4

2 回答 2

1

我为此写了一篇简短的博客文章

对我来说,一个短期的解决方案是创建一个用户不知道的 UITextField。UITesting 目标将与 textField 交互并键入代码,作为 UITest 的一部分。

一旦任何给定的 UITest 开始运行,第一次交互就是与文本字段。文本字段将成为第一响应者(使用辅助功能标签),从而导致键盘在屏幕上滑动。

然后,测试将继续与键盘交互并键入一个字符串,然后再按键盘上的“return”键。键盘关闭,字符串被发送到 UITextFieldDelegate。

该字符串表示一个文件名。我建立了一个代码系统,对应于我隐藏的 .zip 文件。各种测试输入的每个代码都对应于包含我在 docs 目录中需要的数据版本的 zip 文件。

所以这只是在 UITest 继续之前解压缩数据并将其写入 docs 文件夹的情况。

我已向 Apple 发送功能请求,以通过 UITest 目标访问候选应用程序文档目录。

于 2016-12-15T16:23:26.527 回答
0

由于您的应用程序是沙盒的,因此您无法访问该应用程序的文档目录。参考https://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/TheiOSEnvironment/TheiOSEnvironment.html#//apple_ref/doc/uid/TP40007072-CH9-SW1

如果您希望测试该文件。在测试项目中创建该文件并检查。

于 2015-09-01T06:11:27.903 回答