0

VS2008で単体テスト

VisualStudio2008 professionalからIDE標準で単体テスト機能(ブラックボックステスト)が付いているので使ってみた。
俺は今まで単体テストはRSpecぐらいしかやったことがなかったし、何かライブラリを作った時はそれを使うGUI付きサンプルアプリケーションを作ることでしか動作確認してこなかったけど、これは次回からどんどん使っていく事にした。

この種のテストをブラックボックステストと呼ぶらしい。テスト対象のクラスの関数1つずつをブラックボックスと見るテストで、入出力の値に注目する。ある値を関数に入れてみて、予想した値が返ってくるかチェックすることで、関数が仕様を満たしているかチェックする。

今回はBenchmarkCounter.NETの中の処理時間を計るためのOrg.Shokai.Util.Benchmark.Counterクラスのテストを作った。Startメソッドで計測開始し、Stopメソッドで停止、その間の処理時間をミリ秒で保存できる。Start/Stopを複数回行った場合、その間の平均処理時間も求める事が出来る。

テストでは、出力値が正しい値になっているかどうかチェックする。このBenchmarkCounterのテストでは

  • 処理時間を取得するメソッドの場合
    → 時間の値が0以上でなければエラー
  • 計測回数を取得するメソッドの場合
    → 何回か計測してみて、計測回数が合わなければエラー
  • 計測中かどうか?フラグの場合
    → Startメソッドにfalseだったらエラー
    → Stopメソッド後にtrueだったらエラー
という感じ。

Read more

0

WordPressで複数改行を有効にするプラグインを入れた

何行改行しても、空行が1行しか入らなくて困っていた。

CamCam WordPress 改行プラグインを使う


ダウンロードして解凍してプラグインディレクトリに設置、ダッシュボードで有効にする

wget http://camcam.info/wps/wp-content/uploads/2007/02/brbrbrphp.zip
unzip brbrbrphp.zip
mv brBrbr.php ~/www/blog/wp-content/plugins/


大変ありがたい。
preタグ内の改行が2つになってしまうのはしょうがないか

0

Arduinoが流行っている

日本語Twitter検索でarduinoのRSSを監視しているんだけど、最近はかなりの頻度で誰かがArduinoをいじっているのでGoogle Trendsでも見てみた


まずは世界全体。2005年ごろに出てから毎年倍々になってきている。
Google Trends: arduino (世界全体)
Arduino GoogleTrend


Read more

0

del.icio.us2.0をstylishで見やすくする

Scannably Deliciousをほんの少しだけいじった。
Scannably Deliciousをインストールするとこんな風になって見やすくなるが、
さらにnetwork画面の友人のブックマークでもユーザ名を左寄せにして見やすくした。
新deliciousのnetworkページは要素が左右に配置されすぎてて眼が疲れる。

delicious2 + stylish (network)

Read more

0

最近の買ったor読んでる本 – 集合知プログラミング、システム論など

システムの科学
システムの科学
posted with amazlet at 08.11.26
ハーバート・A. サイモン
パーソナルメディア
売り上げランキング: 8402
おすすめ度の平均: 4.5
4 重厚にして、小気味よい一冊。
5 「人工物」におけるデザインとは何か?
和田さんの親父さんの書評を見て買った。記憶から社会まで広くシステムと呼べるもの全般について横断していて、ぱらぱらっと見ただけでは把握できない。



集合知プログラミング
Toby Segaran
オライリージャパン
売り上げランキング: 809
おすすめ度の平均: 4.0
3 私には敷居が高かったかも・・・
5 応用しやすいアルゴリズム
協調フィルタリング、階層的クラスタリングからベイズ、機械学習、SVMなどの数学的・統計的な処理がコードで解説されている。
この本が素晴らしいのは、数式は巻末に掲載されているだけで基本的に文章と図とそれを実装したコードで解説されているという事で、そのまま書き写せば動かせるし、自分なりにちょっといじってみて違う結果が出したりできる。統計だけではなく、その前後つまりdel.icio.usのAPIを呼んだりHTMLスクレイピングしたりしてデータをコレクションし、統計結果をPython Imaging Libraryなどでビジュアライズする所までやってくれるので、頭からがっつり写経して今50ページまで来た。

Read more