Quick

The Swift (and Objective-C) testing framework.

Build Status
CocoaPods
Carthage Compatible
Accio supported
Platforms
Reviewed by Hound

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())
        }
      }
    }
  }
}

Nimble

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.

Swift Version

Certain versions of Quick and Nimble only support certain versions of Swift. Depending on which version of Swift your project uses, you should use specific versions of Quick and Nimble. Use the table below to determine which versions of Quick and Nimble are compatible with your project., Swift version, Quick version, Nimble version, :--------------------, :---------------, :--------------, Swift 4.2, v1.3.2 or later, v7.3.2 or later, Swift 3 / Swift 4, v1.0.0 or later, v5.0.0 or later, Swift 2.2 / Swift 2.3, v0.9.3, v4.1.0, ## Documentation

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!

target "MyApp" do
  # Normal libraries

  abstract_target 'Tests' do
    inherit! :search_paths
    target "MyAppTests"
    target "MyAppUITests"

    pod 'Quick'
    pod 'Nimble'
  end
end

Projects using Quick

Over ten-thousand apps use either 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.

Who uses Quick

Similar to projects using Quick, it would be nice to hear why people use Quick and Nimble. Are there features you love? Are there features that are just okay? Are there some features we have that no one uses?

Have something positive to say about Quick (or Nimble)? If yes, provide a testimonial here.

License

Apache 2.0 license. See the LICENSE file for details.

主要指標

概覽
名稱與所有者Quick/Quick
主編程語言Swift
編程語言Objective-C (語言數: 5)
平台
許可證Apache License 2.0
所有者活动
創建於2014-06-05 00:29:53
推送於2025-06-05 18:34:59
最后一次提交2021-03-02 23:15:02
發布數57
最新版本名稱v7.6.2 (發布於 2024-07-23 09:06:58)
第一版名稱v0.1.0-beta (發布於 2014-07-06 01:07:11)
用户参与
星數9.8k
關注者數222
派生數0.9k
提交數2.2k
已啟用問題?
問題數534
打開的問題數35
拉請求數630
打開的拉請求數5
關閉的拉請求數124
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?