1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Swift Package Managerでテストでしか使わないdependenciesの扱い方

1
Posted at

Swift Package Managerを使ってライブラリをインストールしたりするときに、QuickやNimbleなどのテストでしか使わないのにclone&buildが始まってしまってビルド遅っ!と思うことがしばしばあります。

これはSwift Package Managerがdevとreleaseでdependenciesを別にするといったことができないことが主たる原因です。

Forumでもtest only dependenciesの要望はあがっていますが対応はされていません。

対処方法

Swinjectでは.Package.test.swiftというファイルを用意して、こちらでのみQuick,Nimbleといったテストでのみ使うdependenciesを設定するようにしていました。

そして、テスト実行時にこのようにPackage.swiftに置き換えてテストを実行しています。


$ mv .Package.Test.swift Package.swift
$ swift build
$ swift test

Package.swiftと.Package.Test.swiftの両方をメンテしないといけないので、少し面倒ですが、現状はこうする他なさそうですね・・

参考

1
0
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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?