【swift】 簡単なクラスのテストを書く
前日書いたクラスのコードを書いてみた。
書いたテストはこんな感じ。
import XCTest
@testable import { project name } // ←テストするプロジェクト名を入れる
class Tests: XCTestCase {
func testDateFormat() {
let DF = DateFormat()
// 引数として渡す値 (2001年1月1日の00:00:00 UTC)
let now = Date(timeIntervalSinceReferenceDate: 0)
// 期待する戻り値
let expected = "2001/01/01 9:00"
// 実際の戻り値
let actual = DF.formatSimple(now)
XCTAssertEqual(actual, expected)
}
}
引数として now = Date(timeIntervalSinceReferenceDate: 0) と指定してありますが、これは 2001年1月1日の00:00:00 UTC ± 0 を返してくれます。
-> init(timeIntervalSinceReferenceDate:)
Creates a date value initialized relative to 00:00:00 UTC on 1 January 2001 by a given number of seconds.
つまり、引数の秒数分の Date 属性の値を返却してくれるってことですね。これで固定した日付を取得して、出力の値と比較をします。
テストを行ってみる
テストコードを Xcode 起動でする方法は「command」+「U」もしくは、ツールバーの Product より起動します。
テストコードに問題がなければ、下図のような完了のお知らせが表示されます。問題ナシ!!
複数のテストコードを記述している場合は、どのテストが通らなかったのか?というのもテストコードの列部分にて確認できるようになっています。便利ですね!
最後に
テストコードはアプリの品質を保つために重要なものであると考えます。テストが書きやすいプログラムを書くということは、シンプルなコードで書けているということです。
後からプログラムを触るであろう未来の自分ためにも、品質の良いコードを書いていきたいですね!
ここまでご覧いただきましてありがとうございました!
hoya
この記事が気に入ったらサポートをしてみませんか?