この日は、初めてのタスクのユニットテストを書きました。
使用したライブラリはQuickを使用しました。
https://github.com/Quick/Quick
あとマッチャーでアサーションをしてくれる、Nimbleもインポートして、テストしたい関数に対して、テストを行っていきます。
今まで、XCTestしか描いてこなかったが、このライブラリを使用すれば、振る舞い駆動開発・設計(BDD)スタイルでテストが書けます。以下はQuickのサンプルコードです。
// 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())
}
}
}
}
}
expectからはじまり、to(条件)の文法で書けるため、深く考えずにexpectから始めることができて、今まで、XCTest〇〇としていたXCTestより描きやすいです。
Quickの使い方から実装までを学んだ1日でした!