web-dev-qa-db-ja.com

プロジェクトの名前を変更した後、<XCTest /XCTest.h>が見つかりません。

名前を変更する前に、最初にプロジェクトを複製しました。名前を変更した後、私は得ています

Lexical or Preprocessor Issue <XCTest/XCTest.h> not found. 

エラーは、を呼び出すmyapptests.mファイルに私を導きます

#import <XCTest/XCTest.h>

また次の行

@interface SpyShotTests : XCTestCase

「XCTestCase」は紫色でハイライトされていません。

私が見たチュートリアルでは、ビルド設定のフレームワーク検索パスに移動しましたが、フレームワーク検索パスは最初のファイルとまったく同じであり、そのファイルは問題なくビルドされます。

15
user3294722

私は似たようなものに出くわしました、そして私の解決策が役立つかもしれないかどうか疑問に思います。

エラーをスローしているファイルが適切なターゲットソースの「コンパイルソース」に含まれていることを確認することをお勧めします。ファイルが含まれていない可能性があります。私の場合、テストターゲットではなく、プロジェクトターゲットに含まれていました。 XCTestにはテストターゲットでのみアクセスできるため、「XCTest /XCTest.hファイルが見つかりません」というエラーが生成されてコンパイルされません。

プロジェクトターゲット>>ビルドフェーズ>>コンパイルソース: Making sure your test file is added as a compile source for the test target.

上記の画像のように「ソースのコンパイル」に手動で追加するか、プロジェクトからファイルを削除して再追加し、再追加す​​るときに必ずテストターゲットを選択することで、これを修正できます。 Adding a new file to the Test Target.

(ファイルシステム内の)テストケースファイルを移動し、それをテストプロジェクトに再度追加した後(右クリックして[プロジェクト]にファイルを追加...])、他の誰かに役立つ場合は、ファイルをテストターゲットに追加していなかったことがわかりました。プロジェクトターゲットに追加しただけです。

29
Derek Lee

Xcode 7.2.1/Swift 2.1.1

新しいファイルを作成するときに、iOS>Source>Swift Fileを選択しました。テストターゲットを確認しても、import XCTest行にエラーが表示されました。

エラー:「XCTest」の基になるモジュールを読み込めません

そのエラーを取り除くために、新しいファイルを作成するときにiOS>Source>Unit Test Case Classを選択する必要があり、それ以外はすべてデフォルトを受け入れました。

1
7stud