REST with Spring Boot The canonical reference for building a production grade API with Spring Learn Spring Security ▼▲ THE unique Spring Security education if you’re working with Java today
Android testing using Dagger 2, Mockito and a custom JUnit rule Dependency injection is a key concept to get testable code. Using dependency injection it’s easy to replace an object with a mock to change and verify the behavior of a system. Dagger 2 is the dependency injection library used in many Android projects, in this post we’ll see how to take advantage of it to test an Android app. Let’s se
InjectMocks (Mockito 2.0.36-beta API)に書いてます。 思った挙動と異なっていたので、自分のためにメモ。 次のようなSampleクラスがあったとする。 public class Sample { private final Hoge hoge; private final Fuga fuga; private HogeHoge hogehoge; public Sample(Hoge hoge, Fuga fuga) { this.hoge = hoge; this.fuga = fuga; } public Hoge getHoge() { return hoge; } public Fuga getFuga() { return fuga; } public HogeHoge getHogeHoge() { return hogehoge; } } こ
RxJava is used in many Android applications to manage background tasks, in this post will see how to test this code using Mockito and some RxJava utility classes. The example is written using RxJava 2, the same concepts are available also in RxJava 1 (in the demo project you can find both versions of the same example). Let’s see a simple example, we need a class (created using Retrofit) to execute
2018年6月30日2019年5月20日 Mockitoの入門編等は/tag/mockitoを参照して欲しい。以下のマニュアルは翻訳途中であり、なおかつ初心者向けではない 2018/6/21 現時点の最新バージョン2.19.0の訳に変更することにした。 以下はhttp://static.javadoc.io/org.mockito/mockito-core/2.19.0/org/mockito/Mockito.htmlの訳(Version 2.19.0、現在翻訳進行中) Mockitoライブラリは、モックの生成、検証、スタビングを行うものである。 このJavaDocの内容は、http://mockito.orgでも提供されている。すべてのドキュメントはJavaDocの形で保持されている。そうすれば、ウェブサイトにあるものとソースコードが一貫性を保てるからだ。オフライン作業中でもIDEからド
Mockito 2の変更点についてです。 Mockito 1ユーザの方に向けた内容となります。 リリース方針について 2017/04にリリース方針が変更されました。 以前は修正が入る度にリリースされていましたが、今後は重要なバージョン(基本的にはメジャー/マイナーバージョンが更新されたもの)のみが、JCenter/Mavenセントラルリポジトリより提供されます。 Mockito 1からの変更点 主な変更点、追加機能を以下に記載します。 詳細は、Wiki、リリースノートおよびMockitoのJavadocを確認下さい。 finalクラス/メソッドをモックできるようになった Mockito 1ではPowerMockを必要としましたが、Mockito 2からはinline mock makerを有効にすることで、これらをモックすることが可能になりました。 デフォルトでfinal指定されているKo
こんにちは、 Androidアプリエンジニアの大屋です 最近ようやくテストコードを書き始めたのでテストについてまとめていきたいと思います。 今回はRepositoryパターンのLocal Unit Testについてです。 現在、開発中のアプリですが、MVVM + Repositoryパターンのレイヤードアーキテクチャを採用していてRepositoryパターンの機構を単体テストするにはどうしたらいいのか気になったのでトライして見ました。 よろしくおねがいします💪💪💪 テスト実施用のサンプルアプリ あと、今回テストするのに簡単なサンプルアプリを用意しました。 アプリといってもSharedPreferencesに書き込み、読み込みをするだけのアプリです。 アプリはGithubリポジトリのrepository-testブランチに公開してますので参考にして下さい。ややこしいですがよろしくお願い
Android + Kotlinアプリで、Robolectric + Mockitoを使ったテスト環境を整えるときにハマったこと総まとめAndroidKotlinMockitorobolectric 以下のライブラリ等を使っています。 Android Studio 2.3.3 AndroidのcompileSdkVersion 26 Kotlin 1.1.50 Robolectric 4.3.2 Mockito-Kotlin 1.5.0 内部で使用されているMockitoは 2.8.9 動機 KotlinでAndroidアプリを書いています。 今まではほとんどテストがなかったので、ちゃんと動くテストを書こうと思いたちました。 Android実機(もしくはエミュレーター)上で実行する Instrumented Test は、dexを作ったり実機に転送したりと、何かとテスト実行まで時間がかかり
Javaのmock用ライブラリは探せば色々あるが、一番よく使われてそう(自分調べ)ってことでMockitoを使っている。 http://mockito.org/ Mockitoはそのロゴからいっても「モキート」「モッキート」と読むのが正しいのだろうけど、心の中ではいつでも「モック伊藤」「モック伊藤」と呼んでしまう。 それはさておき、Mockitoについて日本語で書かれた記事は「mock()でモックしてverify()でベリファイするんやで〜」くらいで留まっているものが多そうに見受けられたので、新し目の機能を使ってこういう風に書くのもよさげかな、とここに記しておく。 参考: Mockito (Mockito 2.0.33-beta API) mock()ではなく@Mock, spy()ではなく@Spyをつかう 以下のようにmock()メソッドを使ってmockを作ることも出来るのだが、 MyS
この記事は Android Advent Calendar 2016 12日目の記事です。 こんにちは。昨年からAndroidエンジニアにクラスチェンジして仕事でAndroidアプリを作ってます。今回はDagger2を使ったAndroidのテストの話でも書いてみます。 Dagger2を使ってDIする DIとDaggerについては別の方の記事がよくまとまってますので、こちらでは紹介だけしておきます。 参考: 猿でも分かる! Dependency Injection: 依存性の注入 参考: Dagger2 入門解説 なぜテストにDIが必要か シンプルな例で、何かのAPIの結果を表示する画面を考えてみます。APIを叩くServiceClassを作って、次にActivityの中でそのServiceClassのインスタンスを作ってコールして結果を表示するというような形にしたとします。 この場合、Ac
Robolectric + Dagger2 + Mockito を使ってテストを書くハンズオン# Android_Testing_BCAndroidrobolectric 自己紹介 @numa08 スマホアプリつくるようじょ おしながき Android の2つのテスト Robolectric って何? テストの無いアプリにテストを追加していこう Android の2つのテスト gradle のタスク名から名前を取りました AndroidTest 本物のデバイスやエミュレータで動くテスト Androidフレームワークの機能をそのまま使える Android の2つのテスト Unit Test JVM上で実行されるテスト AndroidフレームワークのコードはJVMでは動かないのでモックが必要 AndroidTestより動作が速い おしながき Android の2つのテスト Robolectri
PowerMock + Mockito を簡単に使ってみたのでメモを残しておきます。 やったこととしては、 1. static メソッドのモック化 2. private メソッドのモック化 3. 例外投げるメソッドのモック化 4. コンストラクタのモック化 という感じです。 今回は、Maven 使ってやることにしました。pom.xml の記述内容は以下に。 ・Mockito_maven - powermock - PowerMock is a Java framework that allows you to unit test code normally regarded as untestable. - Google Project Hosting https://code.google.com/p/powermock/wiki/Mockito_maven ※ 以下から .jar をダ
こんにちは! さて今回は趣向を変えてJ-Unitの話題にしてみます。 PowerMockitoの使い方を少し紹介したいと思います。 外部にHttpリクエストを投げるコードはよくあるかと思います。 単体テストする際にその部分は外部ソース扱いとして切り離して考えるのがベターです。ですが、レスポンス毎のエラー処理などはちゃんとテストしたいですね。 じゃあMock化してしまいましょう。 簡単なHttpRequestを投げるclassです。 テストクラスを作成する際にはhttpClient.executeをMock化して レスポンスや例外を変えればいいと考えますよね。 普通に考えたら簡単そうに見えますが、DefualtHttpClientがMock化できません。 DefualtHttpClient.execute(HttpUriRequest req)メソッドはfinalなのでMockitoではmo
Junitで単体テストをする機会に恵まれたので、備忘録も兼ねて記載。 JUnit暦2週間なのでGreaterな方法もあるはずです。 JUnitでユニットテストをする際にはモックを使う場合がある。 モックを作るツールは多々あるが、今回はMockitoとPowerMockitoを利用する。 クラス名は適当にCarクラスとしておく。 今回紹介するためのクラスなので、面倒くさそうなものを。 public class Car { private static final int FUEL_MAX = 1000; private static Runnable sRunnable; private int mFuel; public Car(int fuel){ mFuel = fuel; } //Constクラスなどによくあるprivateコンストラクタ private Car(){} //publ
環境 Mac OSX IntelliJ IDEA 15 JUnit 4.x Hamcrest Mockito 1.10.19 Espresso 2.2.1 概要 JUnitは、Javaのテスティングフレームワークです。 テストの実行、期待値と実測値の検証、テストケースのフォーマット(アノテーションなど)の機能を持ちますが、実際のテストでは、拡張APIを利用することの方が多いと思います。 JUnit4から、Android SDKに公式サポートされているので、特定のディレクトリにテストコードを配置すれば、意識せずに実行することができてしまいます。(拡張APIもGradleでインストールできるので、こちらも意識せずに利用できてしまいます) そして、実際にテストコードを書く段階になって、どの機能を誰が提供してくれているのか、わからなくなります。 JUnitと拡張API JUnit テスティングフレ
転載元: Yukiの枝折 - Android : AndroidStudio + PowerMock でstaticメソッドをmockする 確認環境 Android Studio 1.1 Android Gradle Plugin 1.1 JUnit 4.12 PowerMock 1.6.2 はじめに Android Studio 1.1(android gradle plugin 1.1)からUnitTestがサポートされた. 今回はPowerMockを使ってstatic methodをモックするUnitTestを書いた. Android StudioでUnitTestを開始するには下記を参考. Unit testing support - Android Tools Project Site Gradle Plugin 1.1.0-rc1でJVMでテストを実行出来るようになったらしい
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く