Java
タイトル通りです。コードから読み取ってください。※タイトルが少し正しくなかったので直しました
ジャバで単体テストを書くにはどうしたらいいんや!と未だに悩んでる私ですこんばんわ。 仕事は仕様が固まらず&不明点が山盛りに対し、リリースが決まってる状態で辛いです。JJUG CCC 2014 Fallにいったので思ったこととかをメモ。でも1日経ったせいでだいぶ…
「全テストで共通の処理をしたい」というのは結構ありました。 DBのクリーンアップとかセットアップをしたい テスト用のHTTPサーバを立ち上げて、テストによって適当な応答を返して欲しい あるログをtailしてテスト毎に出力されたログを記録して欲しい 一時…
MyApp.jar /META-INF MANIFEST.MF Hello.jar /myapp/example Hello.class Hello.properties といった構成で、MyApp.jar内のHello.jarが持っているHello.classとかpropertiesを読み出したい。
今回の目的は以下。 Jerseyの簡単なサンプルを書く(HelloWorld返すだけ) Jettyを組み込んで実行可能なwarにしたい(winstoneとかあるみたいだけど、Jettyで。) Mavenは嫌なのでGradleでやりたい Jerseyを触ろうと思ったけどライブラリどれが必要なのかわから…
WeakReferenceを作る時にReferenceQueueを渡して、System.gc();しても、すぐにReferenceQueueに入らないんだけど!って話をどっかで見たので。うまくいくときといかないときがあるときはスレッドを疑えってばっちゃが言ってた。Javaのバージョンは以下です。…
キャッシュっていろんな意味があってアレだけど、ここでは「苦労して得た情報なんだから使いまわしたい」時に使うキャッシュということで。仕事でキャッシュ使ったほうがいいよなぁ、とぼんやり思ったので考えまとめるためにメモっとく。アルゴリズムの勉強…
こんにちわ。テスト熱中症真っ盛りな自覚はありますが、それほどテストコードは書いてないプログラマーのクズです。今回はタイトルについて、ちょっとうまい方法が思いつかないのと、寝て起きたら忘れてしまうのを防ぐために自分の考えをメモします。(思いつ…
某OSSのプロダクトのあるライブラリの挙動がおかしい、と調査をしていたのだけど、 調査の経過の共有のためにSVNとかにあげてほしい、といわれた。しかし何も考えずwarに含まれていたjarをコピペしてclasspathを通して調査していた。 全部で50ファイル80MBぐ…
良くやろうと思いついて書くけど、書くたびにドキュメント見に行くのがつらかったので記事にしておこう。単純な置換であれば、replaceAllとかで間に合うのですが、 なんちゃってテンプレートエンジンをPatternで作ろうとか思うと、マッチングした内容を加味…
JDK8から盛り込まれたVirtualExtensionMethods。 これで、インタフェースにデフォルトな実装を持つことが出来るようになる。 (Iterable.forEachなどに使ってる) ただ、これによって、1クラスに複数実装可能であるインタフェースは、複数の実装を持つといった…
帰ってきて寝て起きたら朝だった。聞いた内容をメモ帳(物理)からmarkdownチックに転写、置換。あれほどノートPC持ち込めと。メモ が汚くて読めない部分 から内容を思い出せない部分は自分の脳内補完で書いてるところがあるため、間違ってる箇所が多そう。。…
mockito http://code.google.com/p/mockito/ モックをお手軽に作れるライブラリ。 結構前からありますので情報もいっぱい出てますし、Exampleを見て書いてみると十分実用的なので使いたくなると思います。 早速試しましょう。
なんとなくインナークラスにインナークラスはかけないという先入観があったので確かめてみたらかける。 "$"を使ったクラス名も有効だけど、 インナークラスを識別するために「クラス$インナークラス」というclassファイルを作るので、 わざと重複させようと…
時代遅れ感漂う記事。 正規表現でマッチングを行うMatcher 例外メッセージのテストを行うためのRule 例外メッセージのテスト専用のMatcher を作ったので、備忘録程度に。 正しいかどうかは知らないけど、動いてるからOKとする。
テストに何らかの拡張を作りこみたいとき、@Ruleアノテーションを使えばだいたいOKですが、 俺俺アノテーションを作ってそれをテストとして認識させたいんだ!!っていう稀有なニーズ(自己満足)に応えることもできます。 今回は、独自のアノテーションで定義…
ClassPoolからgetして、 setNameで新しいクラス名を設定して、 toClassでClassオブジェクト作る。 package my; public interface SampleIF { String getSimpleClassName(); } package my; public class Sample implements SampleIF { public String getSimpl…
最近はJavaしか触ってないので。 参考 Javaの型推論Utilsクラス - yukobaのブログ (型推論とは言い切れない気がするけど。) Java変態文法最速マスター - プログラマーの脳みそ 4. 配列の辺り package my.sample; import static org.junit.Assert.assertEqual…