問題タブ [moq-3]
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.
c# - Moqで参照パラメータの値を確認します
Moqに切り替えたところ、問題が発生しました。ビジネスオブジェクトの新しいインスタンスを作成し、ユーザー入力値からオブジェクトのプロパティを設定し、メソッド(SaveCustomerContact)を呼び出して新しいオブジェクトを保存するメソッドをテストしています。ビジネスオブジェクトはリモーティングレイヤーを通過するため、ref引数として渡されます。SaveCustomerContactに渡されるオブジェクトのすべてのプロパティが期待どおりに設定されていることをテストする必要がありますが、コントローラーメソッドで新しいものとしてインスタンス化されているため、そうすることができないようです。
テストは次のとおりです。
これは、そのパラメータを取得するための多くの試みの最新のものです。参考までに、actualの値は初期(構築)状態から変化しません。
ターゲット呼び出しが失敗した後、Assert.AreEqual(expected、actual)を移動します。.CallBackの代わりに.Verizable()をセットアップに追加してから、remote.Verifyを呼び出した場合、ターゲットの後で(または、モックをstrictに設定すると仮定して)、テストで提供するパラメーターがコントローラメソッドで作成されたものと同じインスタンス。
私はMoq3.0.308.2を使用しています。これをテストする方法についてのアイデアをいただければ幸いです。ありがとう!
unit-testing - Moq: モックされたメンバー/プロパティの動作とモックされていないメンバー/プロパティの動作を入れ替えることはできますか?
テスト クラスで使用しているモック ライブラリの 1 つのインスタンスを使用したいのですが、一部のテストでは、メンバー関数の 1 つをモックして、モック動作/戻り値を実行/返すことが必要な場合があります。他のテストでは、ライブラリのモックされていない (ネイティブの) 機能が必要になる場合があります。あるインスタンスのセットアップ (モックされた動作) と別のインスタンスの "UNSetup" (モックされていない動作) を切り替える方法はありますか?
c# - Moq を使用して ILogger / ILoggerService をモックする方法
View Model クラスの単体テストを書いています。このクラスのコンストラクターには、ILoggerService が挿入されます。このインターフェイスは、ILogger を返す 1 つのメソッド GetLog を定義します。ILoggable を実装するクラスを表す以下のようなもの: -
以下のような CreateNewOrder メソッドの単体テストを試みています。
有効な Logger が返されるように ILoggerService をモックするにはどうすればよいですか? 現時点では、単体テストで NullReferenceException がスローされます。
私はモッキングを行うために Moq を使用しています。
私は次のように何かをする必要があると想像しています
しかし、テスト クラスに ILoggable を実装させないとどうなるかわかりません。
前もって感謝します。
c# - Moq C# での演算子の動作のモック
うまくいきますように。
C# で Moq を使用していくつかのテストを作成中です。私がモックしているオブジェクトの 1 つは、==、>、および < 演算子をオーバーライドしています。
それが可能かどうかは誰にもわかりますか?もしそうなら...これを複製するようにモックオブジェクトを構成する方法はありますか? 私が尋ねる理由は、私が与えられた、深く汚い依存関係を持ついくつかのレガシーコードとして、モックされたスタブを挿入しようとしているからです。
あなたの時間を大切にします
ありがとう
.net - この状況で Moq を使用できますか?
Moq を使用してこのオブジェクトをモックするために、どのような回避策がありますか。返されるエラー メッセージは次のとおりです。
注: X509SecurityTokenをモックしようとしています。テスト対象のクラスは次のとおりです。
public class X509IssuerNameRegistry : IssuerNameRegistry { readonly List _trustedSubjectNames = new List();
}
これ(Moqを使用)の回避策はありますか、それともこれを達成するために別のモックフレームワークに目を向けるべきですか?
c# - メソッド呼び出しを検証から除外するにはどうすればよいですか?
私はMoqを使用しており、TestInitializeメソッドで次のようにいくつかの期待値を設定しています。
VerifyAll()
これらが呼び出されるかどうかは気にしないので、これらの例外をスローしたくありません。
入力する必要のある文字の魔法の組み合わせは何ですか?
unit-testing - Moq Verify() メソッド呼び出し回数を使用する場合、失敗したテストのエラー メッセージには、Moq を使用した実際のメソッド呼び出し回数が含まれます
注入された依存関係のメソッドが特定の回数呼び出されることをテストしている次のことを検討してください。
失敗したテストを強制すると、出力は次のようになります。
Moq.MockException: モックで呼び出しが 1 回実行されませんでした: e => e.Blink()
より良いのは次のようなものです:
Moq.MockException: 呼び出しが予期せず 1 回ではなく 2 回実行されました: e => e.Blink()
テストに関連する項目は次のとおりです。
失敗したテストのエラー メッセージで、依存関係のメソッドが呼び出された実際の回数を取得して表示することは可能ですか?
それが重要かどうかはわかりませんが、私は Moq v3.1.416.3 を使用しています (最新ではないことはわかっていますが、私が使用している別のライブラリはまだ Moq 4.x に更新されていません…)
c# - 「Any」オブジェクトの MOQ スタブ プロパティ値
メソッドへのすべての引数を「リクエスト」オブジェクトとしてカプセル化し、「レスポンス」オブジェクトを返すパターンに従うコードに取り組んでいます。ただし、MOQ でのモックに関しては、これによりいくつかの問題が発生しました。例えば:
...私のテストでは、キーが与えられたときに顧客を返すようにクエリをスタブしたい
私が望むことはMOQで可能ですか?