home ホーム search 検索 -  login ログイン  | reload edit datainfo version cmd icon diff delete  | help ヘルプ

日記/2009/10/11/クラスを「すげ換える」SandBoxライブラリ、"clas3hift"登録 (v1)

日記/2009/10/11/クラスを「すげ換える」SandBoxライブラリ、"clas3hift"登録 (v1)

日記 / 2009 / 10 / 11 / クラスを「すげ換える」SandBoxライブラリ、"clas3hift"登録 (v1)
id: 456 所有者: msakamoto-sf    作成日: 2009-10-11 23:40:45
カテゴリ: Java 

staticメソッドばかりを詰め込んだクラスがあって、そのstaticメソッドを使いまくってるソースコードをどうにかしてJUnitにかけようと思った。

→めんどくさいので諦めた。

→でもなんとなく頭に来てるので、せめてクラスのすげ換えだけでもできないか、ClassLoaderの資料とか読み込む。

→とりあえずPoCは動いたので、せっかくなのでGoogleCodeに登録。

→でもtestが通らない・・・。Eclipse上で作成したPoCは動いたのに。何故?(今ここ)

テストが無い、いわゆるLEGACYなJavaクラスをテストしようとした時、インスタンス渡しで中で使われているものについてはEasyMockなどで何とか逃げれると思います。しかし、

AppUtils.calcFooBar(int i, int j)

みたいに、クラスのstaticメソッドと通信しまくっているコードはEasyMockも使えませんしテストしようがありません。

そういうときに、テストコードをSandBox化し、その中で"AppUtils"を使おうとすると、裏側では"test.AppUtils"に自動的に置き換えてくれるようなライブラリをイメージしてます。

"class shift" で、"s"が3つ続くので "clas3hift" になりました。shiftというのは、shellscriptとかで引数を一つずつずらしていくアレのイメージです。なんとなく、ダルマ落としを思い浮かべての命名でした。


プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2009-10-11 23:47:48
md5:c26b771f226acc700475b77fdee6d015
sha1:ae57f44dbe65747db285632f5d56b05c01d777f3
コメント
コメントを投稿するにはログインして下さい。