「でも」と書いてますが、他言語でPowerAssert使ったことないです。すみません。
あいにくSwift版を作っている先人はいらっしゃらないようで、それらしいプロダクトは見当たりませんでした。
そこで「欲しいものは自分で作る」の精神で、自分で作ってみることにしました。
PAssert
https://github.com/keygx/PAssert
試行錯誤と割り切りと泥臭い実装によって、ようやくそれっぽいエラーが出力できるようになりました。
##使い方
XCTAssertの代わりにPAssertを使えるようにします
- PAssert.swiftファイルをXcodeプロジェクトのTestターゲットへコピーします。
- テストコードの中でXCTAssertの代わりにPAssertを書きます。
PAssert(値1, 比較演算子, 値2)
// Test MyCalc add()
func testCalc() {
var calc = MyCalc()
PAssert(calc.add(3, 4), ==, 7)
}
- 値1と値2が比較演算子の通り評価され、trueならばテストが通り、falseならばテストが失敗し、下記のような内容が出力されます。
=== Assertion Failed =============================================
DATE: 2015-08-05 11:59:49
FILE: PAssertSampleTests.swift
LINE: 29
FUNC: testCalc()
=> PAssert(calc.add(3, 4), ==, 7)
| | |
| | 7
| |
| false
|
12
エラー内容が分かりやすくなっていいかんじです。