JUnit/Javaテスティング界隈でBoostする為に有用なリンクを集めてみた

JavaでTDDBCに参加し、Bootはした。となると次はBoostしていく必要が出てくる訳だが、職場や社外で実践経験を積むのと同様、JUnitJavaでのテスト実行に関しての知識も増やしていく必要があるのでは?と思い立ち、このタイミングで有用なネタを集めてみました。

テーマによってはひとまず項目のみ洗い出し、項目別に写経や深掘り調査を行った後にエントリとしてUPして行こうと思います。

JUnit:Javadoc APIからJUnitの機能を知る

まずは、何は無くともJUnit自身の機能を知らない事には始まらないでしょう!という事で、APIを眺めてみる事にする。

というか、Javaエンジニアの皆さんはどの様にしてJUnitの技術について情報収集してるんでしょう?リリースノート?ちなみに公式サイトのリリースノート、4.5以降の情報が載って無い…。(Document - Release Notes)

…と思ったら、こっちに最新(4.10)の情報があった。情報はリリースノートよりもこっち(JUnit Annoucements)見たほうが良いのかな?

JUnit:クラス・メソッドから機能を探る

クラス・メソッド単位で利用頻度の高い(若しくは高そうな)ものをチョイスし、深掘り&写経して行こうかと。まずはAssert関連クラス、次いで利用頻度の高そうなクラス・メソッドという感じですかね。

JUnit:アノテーションから機能を探る

JUnitにはアノテーションも多数提供されています。APIからアノテーションの全容を把握し、キーワードでWebを探る、コードを写経して行く事でAPIの仕様を理解し、JUnitテスト実践力を高めます。

<Annotation Type Hierarchy>
org.junit.Test (implements java.lang.annotation.Annotation)
org.junit.Rule (implements java.lang.annotation.Annotation)
org.junit.Ignore (implements java.lang.annotation.Annotation)
org.junit.ClassRule (implements java.lang.annotation.Annotation)
org.junit.BeforeClass (implements java.lang.annotation.Annotation)
org.junit.Before (implements java.lang.annotation.Annotation)
org.junit.AfterClass (implements java.lang.annotation.Annotation)
org.junit.After (implements java.lang.annotation.Annotation)
org.junit.experimental.categories.Category (implements java.lang.annotation.Annotation)
org.junit.experimental.categories.Categories.IncludeCategory (implements java.lang.annotation.Annotation)
org.junit.experimental.categories.Categories.ExcludeCategory (implements java.lang.annotation.Annotation)
org.junit.experimental.theories.Theory (implements java.lang.annotation.Annotation)
org.junit.experimental.theories.ParametersSuppliedBy (implements java.lang.annotation.Annotation)
org.junit.experimental.theories.DataPoints (implements java.lang.annotation.Annotation)
org.junit.experimental.theories.DataPoint (implements java.lang.annotation.Annotation)
org.junit.experimental.theories.suppliers.TestedOn (implements java.lang.annotation.Annotation)
org.junit.runner.RunWith (implements java.lang.annotation.Annotation)
org.junit.runners.Suite.SuiteClasses (implements java.lang.annotation.Annotation)
org.junit.runners.Parameterized.Parameters (implements java.lang.annotation.Annotation)
org.hamcrest.Factory (implements java.lang.annotation.Annotation)
JUnit:書籍から機能を探る

JUnitに関する書籍・特集を組んでいる雑誌などをピックアップ。特に一番上、WEB+DB PRESSに関しては様々な視点から『今』のJUnitを解説しているのでオススメです。

WEB+DB PRESS Vol.69

WEB+DB PRESS Vol.69

  • 作者: 大塚弘記,渡辺修司,堤智代,森田創,中島聡,A-Listers,はまちや2,川添貴生,井上誠一郎,近藤宇智朗,ヒノケン,後藤秀宣,佐藤鉄平,mala,奥野幹也,伊藤智章,WEB+DB PRESS編集部
  • 出版社/メーカー: 技術評論社
  • 発売日: 2012/06/23
  • メディア: 大型本
  • 購入: 13人 クリック: 143回
  • この商品を含むブログ (18件) を見る
JUnit in Action

JUnit in Action

JUnitイン・アクション

JUnitイン・アクション

JUnitと単体テスト技法―JUnit4対応

JUnitと単体テスト技法―JUnit4対応

JUnit:その他テストライブラリからテスト手法を知る

JUnitが一息着いたら(着かなくても?)Java関連ライブラリについても範囲を広げる。まずはMock界隈ですかねぇ。

DbUnit
JUnitEE
Cactus
JBehave
XMLUnit
HtmlUnit
HttpUnit
EasyMock
JMock
Mockito
Mockrunner
JMeter
Selenium
FIT/FitNesse
easyb

Advent Calendarから情報を集めてみる

Advent Calendarに於いては、Java関連の『Java Advent Calendar』でもテストに関するエントリがありましたので抜粋。

日付タイトル
12/06JUnit のセカイ #JJUG - やさしいデスマーチ
12/15JSFUnitでテストしよう!
12/16JUnitの知識を棚卸し #JJUG - 日々常々
12/24mike、mikeなるままに…: hamcrestを拡張してmoreThanとか作ってみた

日付タイトル
12/23Eclipseデバッガ徹底解説 - Yamashiro0217の日記
12/26BDDの話をしよう - やさしいデスマーチ

また、『テスト』関連のAdvent Calendarが2011年度に催されていたのでこちらもメモ。