ページ内ナビ
概要
NimbleはSwift/Objective-C向けmatcher frameworkです。expect(...).to(...)の形式で値比較、collection、真偽、非同期/polling expectationを表現し、XCTestやSwift Testingのtest failureを読みやすくします。
特徴と向いている用途
公式資料に基づく紹介・実機未検証 · 内容確認日:
主な特徴
expectとmatcherで値・collection・条件を表現する
equal、beCloseTo、contain、beTruthyなどのmatcherを使い、期待値を自然な文に近い形で記述できます。Quickと組み合わせるほか、Nimble単体でもtest targetから利用できます。
出典:[2]
向いている用途
XCTest/Swift Testingのassertionをdomainに近いmatcherへ置き換えたい場合に向く
値、collection、非同期状態などを再利用可能なmatcherで揃え、failure messageとtest codeの意図を読みやすくしたいSwift test suiteに適します。
出典:[2]
導入前の確認
参考にした公式資料
- [1]Quick/Nimble — GitHub repository(2026-10-06)
- [2]Nimble v14.0.0 — README(2026-10-06)
- [3]Nimble v14.0.0 — Package.swift(2026-10-06)
- [4]Nimble v14.0.0 release(2026-10-06)
- [5]Nimble Apache-2.0 license(2026-10-06)
編集部からの補足
XCTestやSwift Testingのassertionを読みやすいmatcherへ揃えたい場合に向きます。14系では同期polling expectationが非推奨になったため、既存testはasync APIへの移行箇所を確認してください。
3ステップで試す
- 1
Nimble 14.0.0をtest dependencyへ追加する
Nimbleはunit test targetだけへ追加します。14.0.0はiOS 13以上です。
.package(url: "https://github.com/Quick/Nimble.git", exact: "14.0.0") - 2
expectとmatcherで値を検証する
READMEの基本形に沿って値や文字列をmatcherで検証します。
import Nimble expect(1 + 1).to(equal(2)) expect("seahorse").to(contain("sea")) - 3
asyncな状態をpolling expectationで待つ
14系では同期polling APIが非推奨のため、async形式のpolling expectationを使います。
await expect { state.isReady }.toEventually(beTrue())
成長
成長の推移 · 直近30日
4,836 Stars
推移データを蓄積中です。
開発アクティビティ
直近90日・週次
- Commit(直近30日)
- 0
- Open PR
- 10
開発アクティビティを蓄積中です。
Built with
カテゴリとタグ
GitHubデータ
GitHubのデータGitHubの詳細データを見る
GitHub Topics
- matcher-functions
- swift-generics
- swift-assertions
- failure-messages
- asynchronous-expectations
- swift
- testing
- operator-overloads
- bdd
- Stars
- 4,836
- Forks
- 607
- Watchers
- 85
- Open Issues
- 20
- Contributors
- 117
- 所有者種別
- Organization
- 主要言語
- Swift
- ライセンス
- Apache-2.0
- リポジトリ最終更新
- 2026/05/04
関連情報
関連記事を投稿するこのOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。
あわせて探訪
- MockK5,762 Stars
共通タグ 2件 · 共通カテゴリ 2件
mock・stub・verifyをKotlin DSLで記述し、coroutineやAndroid testへ広げる
Kotlin - RSpec Rails5,276 Stars
共通タグ 2件 · 共通カテゴリ 2件
RailsのモデルやHTTP応答、画面操作を期待する振る舞いとして検証する
Ruby - Kotest4,789 Stars
共通タグ 2件 · 共通カテゴリ 2件
spec style・assertion・property testingをKotlinのtest codeへまとめる
Kotlin - WebMock4,049 Stars
共通タグ 2件 · 共通カテゴリ 2件
RubyのHTTP requestを実networkへ送らずstubし、method・URI・header・bodyに対する期待値をtestで検証する
Ruby - Fluent Assertions3,813 Stars
共通タグ 2件 · 共通カテゴリ 2件
C#.Should()から始まる読みやすいassertionで.NETのunit testに期待結果と失敗理由を表現する - Turbine2,863 Stars
共通タグ 2件 · 共通カテゴリ 2件
kotlinx.coroutines Flowの値・完了・例外を順序どおり待ち受けて検証する
Kotlin
情報の誤りを報告
掲載内容に誤りや古い情報があればお知らせください。