問題タブ [mockk]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
3223 参照

kotlin - モックでコールバックをテストできません: invoke(any())) が呼び出されませんでした

与えられた

または

両方を実行すると、上記のエラー ( Verification failed: call 1 of 1: MyCallback(#2).invoke(any())) was not called) が表示されます

それを修正する方法は?

0 投票する
0 に答える
813 参照

android - FusedLocationProviderClient のモックと Koin による依存性注入による単体テスト

Android アプリ内では、ユーザーの位置を表示するために Google Maps API を使用しています。現時点では、FusedLocationProviderClient 依存関係のパラメーター化された注入 (アクティビティが必要) を Fragment クラスに提供するために Koin を使用しています。理論的には、これにより (mockk を使用した) Client クラスのテストとモックがより簡単になります。ただし、Android FragmentScenario でテストを実行しようとすると、どこかでテストが無限ループでハングしているように見えます (理由についてはデバッグで答えが得られません)。私たちが使用しているフレームワークと一緒にこれをテストする方法について、さらにアイデアがある人はいますか? Android/Google のドキュメントは何の支援も提供せず、何時間も Web をトロールすることもありません。

FusedLocationProvideClient のインジェクションの有無にかかわらずテストを試みました。テスト クラスで Koin テスト モジュールを起動しようとしましたが、アクティビティを使用してパラメータ化したものと使用しなかったものがありますが、違いはないようです。FusedLocationProviderClient は、relaxed を true に設定してモックされます。

テスト クラス:

フラグメント クラス:

無限ループに陥る

0 投票する
2 に答える
8822 参照

android - Android で SharedPreferences をテストする

データの永続化に SharedPreferences を使用するレガシー コードベースを使用しています。MockKを使用してモックして、値の保存/取得をテストしたいと思います。ただし、この単体テストのアサーションは合格しません。テストで SharedPrefs が適切に保存されていないかのようです。

SharedPrefs を単体テストする方法を知っている人はいますか?

0 投票する
1 に答える
3426 参照

java - Kotlin Mockito は常に引数として渡されたオブジェクトを返します

モックされたオブジェクトで Mockito を使用して、引数として渡されたものとまったく同じオブジェクトを常に返すようにしようとしています。私はそれを次のようにしてみました:

ただし、この行は常に次のエラーで失敗します。

insert(user: User)メソッドは引数として取りません(null明らかにUsernull 許容型ではありません)。

insert()メソッドが引数として受け取ったのと同じオブジェクトを常に返すようにするにはどうすればよいですか?