問題タブ [automoq]

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 投票する
0 に答える
93 参照

unit-testing - テスト中の同じクラスのメソッドをモックする方法は?

Moqv4.13 とを使用していC#ます。MethodAのインターフェースでメソッドをテストしようとしていますMyClass : IMyInterfaceMethodA別のインターフェイス ( ) のメソッドの呼び出しがあり、IAnotherそれらをセットアップしました。これらはうまく設定されているようです。

MethodAMethodBまた、 ( on でIMyInterface) およびMethodC( public であり、 on ではなくIMyInterface) inを呼び出しますMyClass

セットアップしましMethodBたが、テスト中に実際のコードMethodBが呼び出されたようです。

に関してはMethodC、その設定方法がわかりません。

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

c# - Moq + Autofixture: 依存プロパティに Setup を使用すると、モック オブジェクト全体がクリアされます

Moq と AutoFixture を使用しています。

次のインターフェースがあるとします。

次のようなテストを実行しています。

最初のテストは成功しますが、2 番目のテストは失敗します: Expected obj.Object.Int2.Prop2 not to be <null> or empty, but found <null>. 依存プロパティの 1 つで Setup を使用すると、オブジェクトInt2全体がクリアされるInt2(すべてのプロパティがデフォルト値に設定される) ようです。何故ですか?それを避ける方法は?

obj.Object作成後は次のようになります。

セットアップの前に

しかし、実行後Setupは次のようになります ( Prop2is null):

セットアップ後

面白いことにInt2、作成後にプロパティにアクセスすると、正常に動作します。したがって、このテストはパスします (変数int2はどこにも使用されていません)。

何か案は?

これは参照用の .csproj ファイルでもあります。

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

c# - Moq、メソッド HttpClient.SendAsync は公開されています。直し方?

エラーが発生しています:

System.ArgumentException: メソッド HttpClient.SendAsync はパブリックです。代わりに、強い型指定の Expect オーバーロードを使用してください: mock.Setup(x => x.SendAsync());

次のコードを実行しようとしている間:

ここで何が欠けているのでしょうか?

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

c# - AutoFixture AutoMoq はクラス コンストラクターを部分的にカバーします

私は AutoFixture AutoMoq を使用しています。これにより、クラスで使用されるすべてのインターフェイスのモックが大幅に簡素化され、初期化されます。

コンストラクターのコードが部分的にカバーされていることに気付きましたが、コンストラクターもカバーできるAutoMoqDataAttributeように変更ArgumentNullExceptionできますか?

ここに画像の説明を入力

AutoMoqData属性クラス、

サービスクラスコード、