LoginSignup
14
14

More than 5 years have passed since last update.

SwiftのテストフレームワークQuickがXcode 6 Beta2で動かなくなった時の対処法

Last updated at Posted at 2014-06-19

結論

以下のコマンドでXCTest.frameworkのシンボリックリンクを作成。

ln -s /Applications/Xcode6-Beta2.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/Frameworks/XCTest.framework /Applications/Xcode6-Beta2.app/Contents/Developer/Library/Frameworks/

Quickとは?

SwiftのテストがRSpecライクに書けるフレームワークです。
susieyyさんの記事が詳しいです。
Swift界隈で話題沸騰中のテストフレームワーク Quick とは? - Qiita

Xcode 6 Beta => Xcode 6 Beta2 では動かなくなる

Xcode 6 Beta2対応のコミットが入りましたので、この問題は解決しています。

Xcode 6 Betaだと動いていたのに!
テストを実行すると、エラーログも出ずにTest Failedになります。

Githubのissue
[Quick, Nimble] Missing XCTest.framework in Xcode 6 Beta 2 · Issue #50 · modocache/Quick

原因

このライブラリが無いため。

/Applications/Xcode6-Beta2.app/Contents/Developer/Library/Frameworks/XCTest.framework

対処方法

XCTest.frameworkのシンボリックリンクを張るのですが、最初はXcode Betaを参考に以下からのリンクを張って悩んでました。

/Applications/Xcode6-Beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks/XCTest.framework

正しくはこちらだそうです。(どうやって見つけたんでしょう。すごい。)

/Applications/Xcode6-Beta2.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/Frameworks/XCTest.framework

おまけ

Quickをgit submoduleでプロジェクトに入れている人向け。
submoduleを最新版に更新する方法。git submodule updateでは更新されない。foreachでgit pull を行う。

git submodule foreach 'git pull origin master'

いつの間にかローカルで変更していてマージが発生するので、resetしたい場合。

git submodule foreach git reset --hard HEAD
14
14
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
14