blog1.mammb.com では CoreMatchers についてでしたが、こちらでは org.hamcrest.Matchers についてまとめます。 org.hamcrest.Matchers JUnit についてくるのは org.hamcrest.CoreMatchers で基本的な Matcher が提供されています。org.hamcrest.Matchers は CoreMatchers を機能拡張したものとなってます。CoreMatchers にあるメソッドは、Matchers にもあります。 hamcrest-core − org.hamcrest.Matchers が入ってる hamcrest-library − org.hamcrest.Matchers が入ってる hamcrest-library は以下のようなパッケージ構成となっており、各用途に応じた Ma
boost::timerはCの標準ライブラリのclock()を使って簡単に時間計測をしてくれる便利なクラスです.基本的な使い方は,以下のようになります. #include <iostream> #include <boost/timer.hpp> #include <windows.h> // Sleep用 int main() { boost::timer t; // タイマーの開始 Sleep(1234); std::cout << t.elapsed() << " sec" << std::endl; // 1.234 sec t.restart(); // タイマーのリセット Sleep(2345); std::cout << t.elapsed() << " sec" << std::endl; // 2.344 sec return 0; } elapsed(訳:経過した)でイ
I can't understand how JUnit 4.8 should work with Hamcrest matchers. There are some matchers defined inside junit-4.8.jar in org.hamcrest.CoreMatchers. At the same time there are some other matchers in hamcrest-all-1.1.jar in org.hamcrest.Matchers. So, where to go? Shall I explicitly include hamcrest JAR into the project and ignore matchers provided by JUnit? In particular, I'm interested in empty
Javaでは昔からリソースの解放がやたら面倒くさかった。 デストラクタはないしfinalizeはいつ呼ばれるかわからないので、try-finallyで明示的に解放メソッドを呼ぶ必要がある。finally節ではさらにnullチェックとか入ってひたすらややこしいコードになる。 InputStream in = null; OutputStream out = null; try { in = new FileInputStream("..."); out = new FileOutputStream("..."); // 例えばストリーム間のコピーとか StreamUtils.copy(in, out); } catch { (snip) } finally { if (out != null) { try { out.close(); } catch (IOException e) { //
メソッド名を日本語にする話 - 日々常々とかにも書いてるんですが、テストメソッド名に日本語を使うのはザラです。むしろ使わない理由がありません。こんなのですね。 import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; import org.junit.Test; public class HogeTest { @Test public void ほげはほげのはず() throws Exception { assertThat("hoge", is("hoge")); } } 例が悪い?そこは気にしないでくださいませ。 さて、メソッド名に日本語を使った時に、一部IDEでは問題が起こることがあります。一部と言いつつ私はEclipserなのでEclipseの話です。 Eclipse
assertEqualsよりassertThatが好きなのは、Matcherもあるけど、引数の順番に悩まないからです。英語として云々なんてどうでもいい。。。。 2012-07-13 00:07:14 via YoruFukurou 元ネタ*1は「xUnitよりRSpecがいいとか言ってたひとは英文ぽいのがいいとか言ってたけどさー」みたいな感じでしたが、xUnitであるところのJUnitでも最近は assertThat なんてもんが入って英文ぽさを売りにすることもあったりなかったり。 ツイートでも言ってる通り、英文ぽさなんてどうでもいいと思ってます。可読性は大事だけど、読めるならそれ以上は要らない派。ならば決め手は何だ。書きやすさと、エラー時の表示です。 assertEqualsのばあい こんな感じに書きますね。短い。書く量が少ないのは良いです。でも1番目と2番目どっちがどっちだったか。 a
サービス終了のお知らせ NAVERまとめは2020年9月30日をもちましてサービス終了いたしました。 約11年間、NAVERまとめをご利用・ご愛顧いただき誠にありがとうございました。
id:wata_orz や kita_masa と少しずつ書いていたプログラミングコンテストの本がようやく完成し,発売間近となりました. http://book.mycom.co.jp/book/978-4-8399-3199-5/978-4-8399-3199-5.shtml Google Code Jam,TopCoder,ICPC, 情報オリンピックなどのような,問題を解くプログラミングコンテストの,特にアルゴリズムに関する話題に焦点を絞った本です.全探索や動的計画法などの基礎的な部分から始まりますが,ネットワークフローや数論などのレベルの高い話題まで扱っており,幅広いレベルの人に楽しんでもらえると思います. また,アルゴリズムの解説だけでなく,章の中で POJ (PKU Judge Online) の問題を扱い,章末で Google Code Jam の問題を扱っています.特に,P
技術ネタじゃないところで盛り上げてしまった。技術ネタいこう、技術ネタ。 さて、JUnitを使う際、hamcrestライブラリを使って、英語として読めるようなassertionを書く、なんてのは流行ってたり流行っていなかったり? JUnit4限定だけれど、assertionの際、assertEqualsとか色々assertionのメソッドはあるけど、全てassertThatで書くことができるはず。assertThatメソッドの第一引数にテスト対象、第二引数にhamcrestのMatcherインターフェイスの実装を与えます。なんのこっちゃですが。 Jiemamyでは、なるべくassertThat以外のassertionメソッドを使わないようにテストを書いています。(もしかしたらもう一つも残ってないかも。) まぁ、以下のように書くと、英語っぽいのが書けますよ、と。 assertThat(aaaa
生命、宇宙、そして万物についての究極の疑問の答え[1](せいめい うちゅう そしてばんぶつについてのきゅうきょくのぎもんのこたえ、原文: Answer to the Ultimate Question of Life, the Universe, and Everything)は、ダグラス・アダムズのSF作品『銀河ヒッチハイク・ガイド』に登場するフレーズである。 ダグラス・アダムズの『銀河ヒッチハイク・ガイド』(The Hitchhiker's Guide to the Galaxy)は、イギリスのラジオドラマで、のちに小説化、テレビドラマ化、そしてついに映画化がなされた人気シリーズである。奇抜な、ほとんど意味不明の領域に近づいたアイデアと、軽妙な語り口を持つスラップスティック(Slapstick = ドタバタ)SF小説である。作中、「生命、宇宙、そして万物についての究極の疑問の答え」を問
楽天会員の最上位ランク、「ダイヤモンドランク」にはお得がいっぱい。限定クーポンはもちろん、1年キープで豪華特典など充実。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く