Quick is a behavior-driven development framework for Swift and Objective-C. Inspired by RSpec, Specta, and Ginkgo.
// Swift
import Quick
import Nimble
class TableOfContentsSpec: QuickSpec {
override func spec() {
describe("the 'Documentation' directory") {
it("has everything you need to get started") {
let sections = Directory("Documentation").sections
expect(sections).to(contain("Organized Tests with Quick Examples and Example Groups"))
expect(sections).to(contain("Installing Quick"))
}
context("if it doesn't have what you're looking for") {
it("needs to be updated") {
let you = You(awesome: true)
expect{you.submittedAnIssue}.toEventually(beTruthy())
}
}
}
}
}
Quick comes together with Nimble — a matcher framework for your tests. You can learn why XCTAssert()
statements make your expectations unclear and how to fix that using Nimble assertions here.
All documentation can be found in the Documentation folder, including detailed installation instructions for CocoaPods, Carthage, Git submodules, and more. For example, you can install Quick and Nimble using CocoaPods by adding the following to your Podfile:
# Podfile
use_frameworks!
def testing_pods
pod 'Quick'
pod 'Nimble'
end
target 'MyTests' do
testing_pods
end
target 'MyUITests' do
testing_pods
end
Many apps use both Quick and Nimble however, as they are not included in the app binary, neither appear in “Top Used Libraries” blog posts. Therefore, it would be greatly appreciated to remind contributors that their efforts are valued by compiling a list of organizations and projects that use them.
Does your organization or project use Quick and Nimble? If yes, please add your project to the list.
Apache 2.0 license. See the LICENSE
file for details.