2010年1月18日月曜日

etc - ユニットテスト

ちょっと慣れてきた。

正しい解が分かっていて、関数単位で比較する場合、かなり便利。
(Google Mockは、まだ試していない)



現在11個だけど、行列計算を1回で正解とするのは、かなり危険なので、
それぞれランダムな数を放り込んで、100回ずつ実行した結果↑

だいたいあってるテストができる ASSERT_NEAR は、小数点以下の桁数しか指定できないので、何か代わりの方法無いものか。float って有効範囲が小数点以下6桁じゃなくて、上から6桁なんだよね・・・

マニュアル見るの面倒だから、乱数生成時の桁数を1e-6にかけて一時回避。でも、これだと、掛け算とかして桁数が変わると外れる。というわけで、とりあえず行列積のところは、乱数の桁数の二乗を1e-6に掛けて回避。

まぁ、大体あってればよし。

0 件のコメント: