如何在Xcode 6.3中安装Quick和Nimble

时间:2015-04-16 18:03:51

标签: ios xcode frameworks xctest quick-nimble

我已经尝试了cocoapods和git子模块,但每次我安装它都不会构建它的框架。有没有人能够安装它。快速灵活我使用master分支上的代码。我也在使用带有xcode 6.3的Swift 1.2。似乎框架没有被编译到项目中。我有时意识到,当你将框架链接到工作区时,它会在构建阶段区域变为红色,但仍然可以工作。但我的快速灵活的框架参考随机变为红色。我只在我的测试目标中设置它们,并尝试在Objective-C中创建一个快速测试,并尝试快速但它只是说构建失败,然后框架链接变为红色。有没有人能够安装它?

正式安装说明应为here

更新:我可以使用cocoaPods而不是git subModules快速灵活地安装(在主分支上)。我使用过的项目已经被指示不要使用Pods所以我需要使用git subModules。 IDE报告以下错误并且未通过任何测试:

 IDEBundleInjection.c: Error 3587 loading bundle '/Users/someUserID/Library/Developer/Xcode/DerivedData/myproduct-aadhzxcsaigkzsgjyneytqrocsjc/Build/Products/Debug-iphonesimulator/myproductTests.xctest': The bundle “myproductTests” couldn’t be loaded because it is damaged or missing necessary resources.
DevToolsBundleInjection environment:
XCInjectDiagnostics: (null)

2 个答案:

答案 0 :(得分:1)

按照以下步骤进行可靠的Quick and Nimble设置:

先决条件:

安装在您计算机中的

cocoapods(installation Guide

1)创建一个新的Xcode项目

Xcode —>文件—>新建—>项目

2)选择Single View应用程序(通常大多数应用程序都使用此应用程序)—>下一步

  • 输入产品名称(App NAme)-(此处使用的是WeatherForecast)

  • 为包含单元测试启用复选标记

3)安装

打开终端

移动到工作目录cd(项目文件夹的路径)

Ex:在终端输入 cd / Users / Documents / WeatherForecast

4)使用

初始化容器
 Pod init 

5)在您喜欢的文本编辑器中打开新创建的Podfile。

使用以下内容编辑podfile

platform:ios,'9.0'

目标WeatherForecast'做

use_frameworks!

定位“ WeatherForecastTests”

inherit! :search_paths

pod 'Quick'

pod 'Nimble'

结束

5)保存podfile。返回终端并

在终端机中输入Pod安装

6)这将安装您的新框架并创建一个pods项目。它还将生成一个工作区。现在,在处理项目时应使用新的工作空间。因此,如果您已经打开了项目,请先将其关闭,然后再打开WeatherForecasr.xcworkspace。

7)设置测试课程

在测试目标内,通过以下方式创建新的组和文件:

突出显示天气预报测试

文件—>新建—>组

重命名新的Group ModelTests

突出显示您的新组

文件->新建->文件

选择Swift文件,然后按

  • 将新文件命名为CurrentSpecs。按创建

7)在新文件中,将内容替换为以下内容

导入基金会

导入快速

导入敏捷

@testable导入WeatherForecast

CurrentWeatherSpecs类:QuickSpec {

}

此后,您可能会遇到错误

“没有这样的快速模块”

“没有这样的模块灵活”

以下步骤可修复错误

尝试以下操作:

  1. 打开Xcode方案列表

  2. 使用“显示”标记“灵活”和“快速”并关闭。

  3. 选择Nimble作为方案并构建(cmd + B)

  4. 选择“快速”作为方案并构建(cmd + B)

  5. 将方案更改回您的应用方案,以查看错误是否消失并且自动补全有效

这是我不时要做的事情

答案 1 :(得分:0)

如果我在测试中添加一个swift文件,那么IDE突然可以快速灵活地链接框架。非常令人沮丧,这不在README文件中。

解决方案:创建一个swift文件并添加到测试目标:

// Swift_Spec_doNotRemove.swift

import Quick

检查here以获取更多信息。