Help us understand the problem. What is going on with this article?

swiftで書いたテストがXcodeで実行できない

More than 5 years have passed since last update.

iosのテストをswiftで実装しようと思ったら以下のようなエラーがでて実行できなくなった。

Test session exited(82) without checking in. Executable cannot be loaded for some other reason, such as a problem with a library it depends on or a code signature/entitlements mismatch.

KIFを使ったテストでこのエラーがでたが、他のテストライブラリでも同様の問題が発生しているらしい。

https://github.com/Quick/Quick/issues/141

~/Library/Developer/Xcode/DerivedData を削除すればよいとか、UIKitをインポートすればよいとか、cleanしてビルドすればよいとか色々な説があったが、自分の環境ではビルドターゲットを作り直したらうまくいった。

具体的には以下の手順

  1. プロジェクトのTARGETSにあるテストのターゲット(xcodeが自動で生成したのであれば、{ProjectName}Tests )を削除
  2. Manage Schemes...からこのターゲットのスキームを削除
  3. ソースツリーから {ProjectName}Tests のディレクトリを削除
  4. ターゲットの追加からCocoa Touch Testing Bundleを追加。このときswiftを選ぶ
  5. New Scheme...から新しくつくったターゲットのスキームをつくる
  6. Bridging-Headerを設定
  7. CocoaPodsをつかってるならupdate
  8. 普通にswiftでテストをかく
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away