2012-12-06 6 views
8

、私のユニットテストの終わりに、私はこのような結果を得る:「すべてのテスト」は2012年12月6日10時23分38秒実行される0000予期しないエラーを書き込むにはどうすればよいですか? Xcodeで

で終了

テストスイートを4.314(4.485)秒

で0障害(0予期しない)と195回のテストは、私が期待故障でテストを定義することができます方法を見つけるのが大好きです。

通常、他のテストフレームワークでは、未完了の単体テストを将来の作業を思い出させるものとして定義できるのが好きです。これらのテストは警告としてのみログに記録する必要がありますが、それ以外の場合は「Success」の最終結果が得られます。

Xcodeの出力を見ると、同じことを達成する方法があると仮定します。しかし、不完全/ TODOテストをマークするのに適切なマクロを見つけるのに問題があります。

2.314(2.334)したがって秒

、任意のテストアサーションの失敗で1つの失敗(0予期しない)と95回のテストを実行はするように見える:さらによう、通常の障害が報告されているように私には奇妙に思えます予想された。その場合、私は(0予期しない)失敗の意味と混同さえします。

誰でもログ結果のその部分の意味を説明できますか?どのように使用できますか?不完全なテストをどのようにマークできますか?

答えて

7

"予期しないエラー"は、スローされた未処理の例外です。おそらく予期される障害とは対照的に、アサーションによってチェックされます。

OCUnitでは、テストを「実行しない」とマークする手段はありません。それらをコメントアウトするか(テストのリスクがコンパイルされなくなる)、メソッド名を変更して "test"プレフィックスを持たないようにします。たとえば、testSomethingの名前をXXXtestSomethingに変更します。 (これは、あなたがそれを元に戻すことを忘れる危険を残す)。

+0

ありがとう!もう一度、あなたは素晴らしいココアのテストヒーローです。私の質問は、rspec +キュウリの冒険をしたRubyの完全な100%BDD後に出てきました。今、私はCocoaプロジェクトのTDDの風景に関するあらゆる暴言を理解しています。 – SystematicFrank

+0

これがどこかに書かれていれば大好きです。しかし、Appleの単体テストには多くのことが求められる。 – Step

1

私の問題の1つの解決方法は、警告プリプロセッサマクロを使用して、完了しなければならない単体テストをマークすることです。そのようにして単体テストをコンパイルした後、私は今後行わなければならない作業の概要を知ることができます。これは警告パネルに表示されるため、TODOコメントを使用するよりもはるかに魅力的です。

しかし、私はむしろ不完全なテストの総数を得て、私のログレポートのいつもの "予期しない"カウントの意味を知りたいと思います。

関連する問題