SolvedCocoaPods Modules not found in test targets

🌈

Report

I am having trouble with "No such module 'MODULE_NAME'" errors.

Example Project

What did you do?

  1. Created a new Xcode project
  2. Created Podfile using template generated by running pod init
  3. Added the pod Alamofire to the target "Demo App"
  4. Added the pod OHHTTPStubs to the targets "Demo AppTests" and "Demo AppUITests"
  5. Ran pod install --verbose
  6. Opened workspace up in Xcode
  7. Opened Demo_AppTests.swift and added the following to the top of the file:
import XCTest
import Alamofire
import OHHTTPStubs
@testable import Demo_App
  1. Tried to use either of the libraries imported (Alamofire or OHHTTPStubs) and autocomplete wouldn't come up.
    Error on import Alamofire was "No such module 'Alamofire'".
    Error on import OHHTTPStubs was "No such module 'OHHTTPStubs'".

NOTE: Adding pod 'Alamofire' to the testing targets also results in the same behaviour.

These errors would sometimes disappear for around ~5 secs or until a key was pressed to make a change to the swift file if I build the targets generated by CocoaPods or ran both CMD + SHIFT + U and CMD + SHIFT + R.

Sometimes running CMD + U would let the test target compile and other times it would not.
I have also tried clearing derived data.

What did you expected to happen?

I expected that the pod Alamofire would be available for use in all targets.
I expected that the pod OHHTTPStubs would be available for use in all test targets.

What happened instead?

In the test targets the modules Alamofire and OHHTTPStubs could not be found.

That is:

Pod Alamofire is missing from the targets "Demo AppTests" and "Demo AppUITests".
Pod OHHTTPStubs is missing from the targets "Demo AppTests" and "Demo AppUITests".

Pod Env

Stack

   CocoaPods : 1.0.0.beta.4
        Ruby : ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin15]
    RubyGems : 2.5.1
        Host : Mac OS X 10.11.3 (15D21)
       Xcode : 7.2.1 (7C1002)
         Git : git version 2.5.4 (Apple Git-61)
Ruby lib dir : /Users/brettbest/.rubies/ruby-2.3.0/lib
Repositories : master - https://github.com/CocoaPods/Specs.git @ e77d73db1bdaebf03fee6dab82aae3a90c99d367

Installation Source

Executable Path: /Users/brettbest/.gem/ruby/2.3.0/bin/pod

Plugins

cocoapods-deintegrate : 1.0.0.beta.1
cocoapods-plugins     : 1.0.0.beta.1
cocoapods-search      : 1.0.0.beta.1
cocoapods-stats       : 1.0.0.beta.3
cocoapods-trunk       : 1.0.0.beta.2
cocoapods-try         : 1.0.0.beta.2

Podfile

platform :ios, '9.0'
use_frameworks!
inhibit_all_warnings!

target 'Demo App' do
  pod 'Alamofire'
end

target 'Demo AppTests' do
  pod 'OHHTTPStubs'
end

target 'Demo AppUITests' do
  pod 'OHHTTPStubs'
end
30 Answers

✔️Accepted Answer

orta
141

Thanks for the great ticket! So, pods would be passed to a target by inheritance here, but you're not inheriting them. To quote the guide

platform :ios, '9.0'
inhibit_all_warnings!

target 'MyApp' do
  pod 'GoogleAnalytics', '~> 3.1'

  # Has it's own copy of OCMock
  # and has access to GoogleAnalytics via the app
  # that hosts the test target

  target 'MyAppTests' do
    inherit! :search_paths
    pod 'OCMock', '~> 2.0.1'
  end
end

So in this case you want to do something like:

target 'Demo App' do
  pod 'Alamofire'

  target 'Demo AppTests' do
    inherit! :search_paths
    pod 'OHHTTPStubs'
  end

  target 'Demo AppUITests' do
    inherit! :search_paths
    pod 'OHHTTPStubs'
  end  
end

Though I bet you could improve that even further, I think, this is guesswork now though:

target 'Demo App'
pod 'Alamofire'

abstract_target 'tests' do
  target 'Demo AppTests'
  target 'Demo AppUITests'

  inherit! :search_paths
  pod 'OHHTTPStubs'
end

Other Answers:

I believe this thread got off-topic. The initial issue is not the inheritance, but the fact that adding a pod to a test target doesn't work, as xCode says No Such Module 'Quick'. Is there any official fix for this? or maybe an official extra step that we need to do, that is not documented?

@AshleyDeng I got quite a long list of schemes, have you found a solution since that doesn't require all this manual work 😅 i've got the same issue.

Running pod deintegrate, changing the Podfile to

platform :ios, '9.0'
use_frameworks!

target 'Demo App' do
  pod 'Alamofire'

  abstract_target 'tests' do
    platform :ios, '9.0'
    target 'Demo AppTests'
    target 'Demo AppUITests'

    inherit! :search_paths
    pod 'OHHTTPStubs'
  end
end

and using CocoaPods/Core#308 together fix the issue

I know this issue has been closed but I just experienced this issue with Cocoapods 1.0.0 and the way i solved it is as follows... When I tried the new cocoapods 1.0.0 syntax for the Podfile like so:

target 'Chat_Example' do
    pod 'ChatKit', :path => '../'
    target 'Chat_Example_Tests' do
         inherit! :search_paths
    end
end

then my test target was not able to import the ChatKit module. However if I write the Podfile as so
then the tests are able to import the module:

def reusepods
    pod 'ChatKit', :path => '../'
end

target 'Chat_Example' do
     reusepods
end

target 'Chat_Example_Tests' do
    reusepods
end

Related Issues:

765
655
CocoaPods [error report] pod install /w m1 macbook
do you have a MacBook Pro with a M1 processor? this fixed my issue: Report What did you do? Run pod ...
392
CocoaPods NoMethodError - undefined method `size' for nil:NilClass
Also faced with this issue Fixed by updating flutter and cocoa pods to the latest version and then ...
247
CocoaPods pod install has bug
Did you try: sudo arch -x86_64 gem install ffi And run: arch -x86_64 pod install instead of pod inst...
186
CocoaPods CocoaPods was not able to update the master repo
Looks like your specs repo was edited at some point and now git can't update it ...
182
CocoaPods CocoaPods compatibility with Apple DTK (Apple Silicon)
For anyone else struggling with this issue I just found a way to solve it In addition to running ter...
175
CocoaPods Build issue with Xcode 12.3 - file not found #include "ruby/config.h"
I just updated to Xcode 12.3 and I am hitting this issue Seems like Xcode 12.3 broke the system ruby...
169
CocoaPods Unzip fail when zip contains chinese char on macOS 10.13
Maybe replace unzip with ditto: I have a SDK and there is a folder named FaceDistortion_20171205雪天的雪...
163
CocoaPods None of your spec sources contain a spec satisfying the dependencies
Did you note this part of the error message: Note: as of CocoaPods 1.0 pod repo update does not happ...
145
CocoaPods pod install fails with json error on Mac OS X 10.15
I did rm -rf ~/.cocoapods/repos/trunk/ After that it worked again. I've read and understood the CONT...
124
CocoaPods No such file or directory @ rb_sysopen -- AppCenter -- ReactNative
So I updated my appcenter dependencies from v2.4.0 to v2.5.0 and I'm having this issue again 🙄 Edit...
122
CocoaPods App Icons not included in build from Xcode 9
I have the same problem Report What did you do? Run project on device from Xcode 9 Beta 6 What did y...
113
CocoaPods Intermittent CDN issues
The workaround to get working locally during this outage or CDN issue - guessing a DNS change or som...
89
CocoaPods new Macbook M1 crash
As a temporary fix I've installed cocoapods using sudo arch -arch x86_64 gem install cocoapods then ...
83
CocoaPods Support multiple Swift versions on a per pod basis
this works: It's not pretty but will do until they update your pods to Swift 4. ...
80
CocoaPods pod update error with CDN
And? How to fix? gem install concurrent-ruby or gem update concurrent-ruby. I've read and understood...
71
CocoaPods Failed to build gem native extension. Header file missing,
I had the same problem on macOS Mojave 10.14.16 A few threads eventually lead me here which solved i...
54
CocoaPods I can not install pod files.
Nope Just do: Install ffi sudo arch -x86_64 gem install ffi Re-install dependencies arch -x86_64 pod...
52
CocoaPods CocoaPods1.9.0 cannot install on Mojave10.14.6
This should be re-opened I can repro on a clean Mojave The workaround is to run sudo gem install coc...
46
CocoaPods [Xcode 8 beta 2]: CopySwiftLibs for Pods framework fails with Mach-O header error
I've found a workaround Add the following lines to your Podfile: 🌈 I've read and understood the *CO...
45
CocoaPods FBSDKLoginKit can not find headers under 1.0.0
This appears to be some issue between CocoaPods and XCode I tried to reproduce the problem I was see...
40
CocoaPods Podfile without use_frameworks! triggers "deployment target" warnings in Xcode 10
For those wanting a quick fix: edit: updated snippet now supports the new generate_multiple_pod_proj...
37
CocoaPods Resources installed using cocoapods not loaded for xctest bundle
For me I fixed it by setting Host Application to main target (In Test Target -> `General) ...
36
CocoaPods CDN: trunk Repo update failed - 2 error(s):
pod repo list 查看源列表 pod repo remove trunk 移除trunk源 只有移除掉问题才解决!!! 2019.11.07更 怕有人不懂,特意写了一篇文章 具体操作看下这篇...
36
CocoaPods [1.9.2] Error during pod install JSON::ParserError - 767: unexpected token
Running only sudo rm -rf ~/.cocoapods/repos and then pod install was enough for my case. ...
35
CocoaPods pod lib create fails: uninitialized constant Nanaimo::Reader::StringScanner (NameError)
gem uninstall nanaimo It will prompt you for which version to uninstall 👍 Before you start ...
35
CocoaPods pod install triggers pods to use Swift 4.2 in XCode 10
I was also facing the same problem and able to fix by adding swift_version in pre_install block Is t...
32
CocoaPods pod spec lint fails (Xcode 8 GM & Cocoapods 1.1.0.rc.1)
Got it working using the .swift-version file mentioned in #5841 For those who need help make a .swif...
32
CocoaPods undefined method `map' for nil:NilClass (NoMethodError) Did you mean? tap
ah gem update xcodeproj fixes the problem for me I've read and understood the CONTRIBUTING guideline...
31
CocoaPods error: RPC failed; curl 56 OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 54
This seems like an issue with cloning the master repo Could be an issue with your connection or the ...
31
CocoaPods Malformed version number string
if your rubyGems version is 2.7.7 or higher you just can do like this gem update --system 2.7.6 my p...
30
CocoaPods Pod with swift 4.2 fails at linting
The podspec contains s.source_files = Constrictor/Constrictor/**/* which includes all files includin...
25
CocoaPods LoadError - cannot load such file -- macho
TBH I'm not familiar with ruby so this may be a terrible solution I tried with versions 1.5.0 and 1....
24
CocoaPods Modules not found in test targets
Thanks for the great ticket! So pods would be passed to a target by inheritance here but you're not ...
24
CocoaPods Duplicate symbols when framework target has a static dependency
I have a new version of the workaround It works when some static libraries are only used in the Appl...
23
CocoaPods UITests missing 📦 Embed Pods Frameworks build phase in 1.0.0.rc.1
Moving the UITests target outside of the main target in the Podfile seems to have helped So now inst...
22
CocoaPods Fails to install cocoapods on Ruby 2.4
Luckily cocoapods v1.0.1 still works Reproduction Detail CocoaPods has dependency in activesupport g...
20
CocoaPods Unit tests do not run on iOS 11 devices on Xcode 11 when using dynamically linked libraries
@dvataksi16 I got a response from Apple with a non-hacky solution: After reviewing your feedback we ...
19
CocoaPods 🐛 : Unable to install pods using custom build configurations
Just to leave a clear solution here Thankfully the solution is already merged to RN 0.63.3 ...
19
CocoaPods pod install: [!] Oh no, an error occurred.
This was what worked for me - arch -x86_64 pod install Report [!] Oh no an error occurred ...
19
CocoaPods Raise default macOS/iOS deployment target
The same is happening with iOS btw I've read and understood the CONTRIBUTING guidelines and have don...
18
CocoaPods Bug with Unit Tests on Mojave: "The bundle couldn’t be loaded because it is damaged or missing necessary resources"
i was able to workaround this by reverting to the legacy build system for now to get the UI tests ru...
17
CocoaPods pod search AFNetWorking
Can you try removing search_index.json and run search command again? I'd be happy if you send the ou...
17
CocoaPods Signing for requires a development team. Select a development team in the Target Editor. in Xcode 8 and Swift 3. 🌈
I know it's a bit self explanatory but to make the project actually build again select a Development...
16
CocoaPods Playgrounds regression between CocoaPods 1.4.0 and CocoaPods 1.5.0
@dnkoutso The workaround suggested above (@litmanenPL) does resolve the issue 🌈 I've read and under...
15
CocoaPods 'Pod Spec Lint' failed validation
Confirmed this is the same as #8116 This worked and I was able to lint successfully Please remove In...
14
CocoaPods Current CocoaPods should be installable on Mojave without dependency upgrades
Here's an annotated transcript of my console session reproducing the problem I've also discovered th...
13
CocoaPods Pushing spec fails with Xcode 10 GM
Run gem install cocoapods --pre to install beta version 1.6.0.beta.1 fixes the issue for me ...
11
CocoaPods RuntimeError - [Xcodeproj] Unknown object version.
you are on a very old version of cocoapods please update to latest version and also gem update xcode...