問題タブ [automocking]
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.
qt - CMake と Qt5 AUTOMOC エラー
Qt5 を使用するプロジェクトがありCMakeLists.txt
、Visual Studio ソリューションの作成に使用するファイルがあります。
これは私の抜粋ですCMakeLists.txt
コードをコンパイルしようとすると、次のエラーが返されます。
moc ファイルは自動生成され、ヘッダーはビルド フォルダーではなく、src ディレクトリ内のフォルダーにあります。
このエラーを修正するにはどうすればよいですか?
c++ - automoc で同名ファイルを扱う
次のソース ツリーがあります。
./Source1.hpp と ./subsource/Source1.hpp の両方のファイルは、moc で処理する必要があります。automoc を使用する場合、ファイルを上書きすることは不可能であるため、出力 moc ファイルを同じ名前の同じディレクトリに配置します。
Qt - 5.2
CMake-2.8.12
CMake ファイルはかなり大きいですが、簡単な例を次に示します。
解決策はありますか?
ioc-container - LightInject と Nsubstitute を使用したオートモックの方法は?
私は両方のライブラリに不慣れで、大規模なプロジェクトでの使用にコミットする前に、単体テストでのローコード作業の自動モックのオプションを明確にする必要があります。
Google でしばらく時間を費やした後、他の IOC とモッキング製品の組み合わせとは異なり、LightInject+Nsubstitute がユニットの手配段階で何もしないデフォルト モックの宣言を簡素化するための既製のプラグイン ライブラリは利用できないと結論付けました。テスト。
単体テストの範囲だけのために LightInject コンテナーを一時的な拡張モック オブジェクトでオーバーライドする方法について LightInject のドキュメントを読みましたが、単体テストが触れる可能性のある何もしない既定の分離モックについてはどうでしょうか。LightInject コンテナ内での作成を自動化する方法はありますか?
私が探している内部 IOC コンテナーの動作は次のとおりです。
LightInject の IProxy と Interceptors は、いくつかの内部モック オブジェクト ビルディング ブロックを提供しているようですが、比較すると Nsubstitute ライブラリはフル機能を備えています。
デフォルトで何を意味するのかを明確にし、モックと拡張モックを行いません。
明らかに、2 番目の拡張タイプのモックは、単体テストごとにローカルで作成する必要があります。
unit-testing - 自動モック用に Unity コンテナーを拡張するには?
単体テストで SUT の依存関係のモックを Unity に自動的に挿入してもらいたいです。
モックの作成を(必要に応じて)カスタマイズするには、ある種のIServiceProvider実装をお勧めします。
出来ますか?
PS TypeMockを使用しています
c# - NSubstitute (またはその他のもの) を使用した Unity と自動モック
私の質問は、この質問から派生したものです:これは Unity (Castle Windsor の代わりに) で可能ですか?
答えからのクラスは次のとおりです。
そこに投稿されたソリューションは、SINGLE オブジェクトに対してうまく機能します。ソリューションが投稿されている場合は、Resolve を呼び出すたびに同じオブジェクトが返されます。
これは、次のようなテスト ケースでは問題ありません。
上記の質問に投稿された解決策は、上記でうまく機能します。
上記のコードは、Unity を介してオブジェクトを作成し、コンストラクターの引数を解決しようとします。型が Unity 構成でマップされていない場合は、NSubstitute を介してモックを返します。
したがって、効果的にチェーンは次のようになります。
問題は、そのようなオブジェクトを 2 つ作成すると、モックが同じオブジェクトを指すことです。
メソッド GetOrCreateSubstitute() で CONTAINS チェックを削除すると、毎回新しいモックを取得します...しかし、特定のオブジェクトのモックにアクセスして期待値を設定するにはどうすればよいでしょうか? :-(
質問が明確であることを願っています!!
asp.net-mvc - ASP.NET MVC での Autofac Automocking
そのため、ASP.NET MVC 5 で Autofac Automocking を使用しようとしていますが、何らかの理由で機能しません。
これまでのテストは次のとおりです。
ApplicationUserManager をモックすると、テストが失敗します。エラーは次のとおりです。
ApplicationDbContext を自動モックしようとすると同じことが起こり、非常に単純なコンストラクターがあるため、問題は発生しません。モッキングは初めてです - このシナリオではどうすればよいですか?
編集:また、無関係な質問ですが、ご存知かもしれませんが、テストで以前に作成したリストを使用して DbSet の Moq を作成するときに、次のことを行う必要があることに気付きました。
それは本当に直感的ではないようです。モックにリストを取得するように指示する方法はありますか? 次のようなものです:
または、これらの 4 行を追加せずに既存のリストから DbSet Moq をすばやく作成する他の方法はありますか?