Swift テストコード書き方

参考にさせていただきました。

qiita.com

テストには大きく分けて2つある。

明示的出入力テスト

引数と戻り値があるもの 単体テストが書ける。

暗黙的出入力テスト

引数と戻り値はあるが、途中で他のクラスの変数を利用して処理する場合など こっちのほうが難しい

デフォルトテストコード

class HogeHogeTests: XCTestCase {

    override func setUp() {

        //setUp()クラス・メソッドは、最初のテスト・メソッドが呼び出される前に、テストケースに対して一度だけ呼び出されます。テストケース内のすべてのテストの初期状態をカスタマイズするには、このメソッドをオーバーライドします。
    }

    override func tearDown() {

//tearDown()クラス・メソッドは、その最後のテスト・メソッドが完了した後、テスト・ケースに対して一度だけ呼び出されます。このメソッドをオーバーライドして、すべてのテストメソッドが終了した後にクリーンアップを実行します。

    }

    func testExample() {
//XCTAssertクラスを利用する。関数定義は以下
func XCTAssert(_ expression: @autoclosure () throws -> Bool, _ message: @autoclosure () -> String = "", file: StaticString = #file, line: UInt = #line)

:expression はboolean型
: message 失敗時の詳細
:file 失敗したときのファイル。この関数が呼び出されたテストケースのファイル名がデフォルトになります。 
:line 障害が発生した行番号

}

    func testPerformanceExample() {
        // This is an example of a performance test case.
        self.measure {
            // Put the code you want to measure the time of here.
        }
    }

}