0

UI テスト スクリプトを作成すると、問題が発生します。ターゲット APP ドキュメント フォルダの下に作成されたログ ファイルにアクセスする必要があります。ただし、UI Testing APP は別のスレッドとして実行されています。

 NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

このメソッドは、ターゲット アプリではなく、UI Testing APP ドキュメントのパスのみを返すことができます。

対象アプリのフォルダにアクセスする方法はありますか?

4

2 に答える 2

1

これについて短いブログ記事を書きました。

私にとっての短期的な解決策は、ユーザーが認識していない UITextField を作成することでした。UITesting ターゲットは、textField と対話し、UITest の一部としてコードを入力します。

特定の UITest の実行が開始されると、最初の対話はテキスト フィールドに対するものでした。テキスト フィールドが (アクセシビリティ タグを使用して) 最初のレスポンダーになり、画面上でキーボードがスライドします。

次に、テストはキーボードとの対話に進み、文字列を入力してから、キーボードの「return」キーを押します。キーボードが閉じられ、文字列が UITextFieldDelegate に送信されました。

文字列はファイル名を表しています。隠し持っていた .zip ファイルに対応するコードのシステムをセットアップしました。さまざまなテストで入力された各コードは、docs ディレクトリに必要なバージョンのデータを含む zip ファイルに対応していました。

そのため、UITest を続行する前に、データを解凍して docs フォルダーに書き込むだけでした。

UITestターゲットを介して候補アプリのドキュメントディレクトリにアクセスする機能リクエストをAppleに送信しました。

于 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 に答える