JUnitネタ
ざくっとした備忘録メモ
mockito
powerMockito
JMockit
whitebox
JavaでのDBのテストデータ作成はDbSetupが楽DbSetup
PowerMockとSpringJUnit4ClassRunnerを同時に起動する
@RunWith(PowerMockRunner.class)
@PowerMockRunnerDelegate(SpringJUnit4ClassRunner.class)
mockito, powerMockのパターン毎のサンプル
Javaでprivateメソッドのテストとそのメソッドをパーシャルモックする方法
※テストにprivateが絡んで来たときhttps://qiita.com/shotana/items/142bcd03ef6f9f25bf2a
Springのrunner使ってインジェクションすると重くなる(できればインジェクション無しの状態でテストできるのがいいけど。。
※InjectionMocksを使ってモックでDIするとよいかも。
InjectionMocks
- @Autowiredとか関係なく、privateなフィールドにモックをセットできる
インジェクションのモック
- http://qiita.com/nyasba/items/16daeff7b9a2a65ef07f
- http://tech-blog.tsukaby.com/archives/305
- http://qiita.com/nyasba/items/cd72231f56536a9ef199
- http://javatechnology.net/java/mock-injectmocks/
DBUnit
- JUnit用のDBスキーマを用意しないと、中断したりした時に開発で使ってるスキーマの中身が消えてしまう可能性があるので注意
privateメソッドの試験は、リフレクションで無理やり呼ぶ
- http://qiita.com/village/items/2f0d99b25eef0c8fd4ec
- JMockit使うのもあり
protectedはビルドパスで設定すると楽
セッション(HTTP)
ライブラリで用意されてるメソッドを使っている場合、最悪、メソッドそのものがコールされたかどうかで確認してもよい
fail()を使う(例::異常系の確認の場合、正常系に行ったらエラーにしないといけない