没有使用 cocoapods 的模块 `Quick`

Pep*_* A. 5 testing xcode ios cocoapods swift

我已经学习 swift 三天了。我计划在 swift 中建立我的技能,尤其是在 iOS 开发方面。我的同事是 iOS 开发人员,我只是建议我在我们的应用程序中编写测试时快速学习——这是为了公司和我自己的利益,这对我来说很有意义。现在,我正在尝试按照本教程 https://medium.com/@ynzc/getting-started-with-tdd-in-swift-2fab3e07204b

按照教程在名为 Quick 的框架中重写测试后,该框架与 Rspec 非常相似。我安装了 CocoaPod,然后安装了 Quick 框架。使用.xcworkspaces代替.xcodeproj。但我仍然收到No such module 'Quick'.

我已经进行了研究并移除了豆荚,但仍然出现错误。

platform :ios, '9.2'

target 'FizzBuzz' do
  use_frameworks!

  def test_pods
    pod 'Quick', '~> 0.9.0'
    pod 'Nimble', '~> 3.2.0'
  end

  target 'FizzBuzzTests' do
    inherit! :search_paths
    test_pods
  end

  target 'FizzBuzzUITests' do
    inherit! :search_paths
    test_pods
  end

end
Run Code Online (Sandbox Code Playgroud)

项目文件夹截图:
项目文件夹截图

Scr*_*ble 6

我最近遇到了这个问题,目前的答案都没有为我解决这个问题。

我收到此错误的原因是我创建的测试/规范文件 (NetworkSpec.swift) 具有主应用程序目标的目标成员资格,而不是测试目标。

为了更新这一点,我在 xcode 中打开了项目,在项目资源管理器中选择了该文件,然后在右侧的属性窗口中选择了该文件。然后在目标会员区。我有两个选择。

  • 项目名
  • 项目名称测试

我取消选中 ProjectName 旁边的复选框(不是应用程序的真实名称),然后选中 ProjectNameTests 旁边的复选框并重新运行测试。一切都按预期进行。


Pok*_*oke 0

尝试这个。Cocoapods 可能需要重建。

  1. 退出 XCode。转到终端并 cd 进入您的项目。
  2. 运行 pod deintegrate。
  3. 运行 Pod 安装。
  4. 打开 Xcode 并清理并构建您的 .xcworkspaces 项目。