問題タブ [justmock]
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# - UrlHelper で Justmock のモック コンストラクター呼び出しが失敗する
justmock では、コンストラクター呼び出しを次のように配置することで、実際のインスタンスの代わりにモック化されたインスタンスを返すことができます。
しかし、クラスで同じことを試してみると、UrlHelper
モックされた型ではなく、実際の型がインスタンス化されています。これに間違いがあるかどうかは誰にもわかりますか:
UrlModel クラス
試験方法 :
c# - ASP .NET MVC の単体テストを作成する際の問題
ASP .NET MVC コントローラー クラスの単体テストをいくつか作成していますが、非常に奇妙なエラーが発生しました。
私のコントローラーコードは以下の通りです:
私のテストコードは以下の通りです:
問題 1 - マッピングの例外:
テストを実行するたびに、次の例外が発生します。
テスト名: Delete_Journal テストのフルネーム
: Journals.Web.Tests.Controllers.PublisherControllerTest.Delete_Journal
テスト ソース: \Source\Journals.Web.Tests\Controllers\PublisherControllerTest.cs: 132 行
目 テスト結果: 失敗 テスト期間: 0:00:00 ,3822468結果 StackTrace: \Source\Journals.Web\Controllers\PublisherController.cs の Journals.Web.Controllers.PublisherController.Delete(JournalViewModel ジャーナル):\Source の Journals.Web.Tests.Controllers.PublisherControllerTest.Delete_Journal() の 81 行目\Journals.Web.Tests\Controllers\PublisherControllerTest.cs:156 行目結果メッセージ: テスト メソッド Journals.Web.Tests.Controllers.PublisherControllerTest.Delete_Journal が例外をスローしました: AutoMapper.AutoMapperMappingException: 型マップ構成が見つからないか、マッピングがサポートされていません。
マッピング タイプ: JournalViewModel -> Journal Journals.Model.JournalViewModel -> Journals.Model.Journal
宛先パス: ジャーナル
ソース値: Journals.Model.JournalViewModel
JournalViewModel
クラスとの間にマッピングの問題があるようですが、Journal
それがどこにあるのかわかりません。このコードをApplication_Start
inに追加しましたGlobal.asax.cs
:
Journal
からへのマッピングJournalViewModel
が機能しています。
Mapper.CreateMap<JournalViewModel, Journal>();
最後に、メソッドの最初の行として追加しようとしたところDelete
、すべてが機能しましたが、理由はわかりません。
問題 2 - HTML 例外
上記の回避策でマッピングが実行されると、Mock を使用してオーバーライドして常に true にしたにもかかわらず、プロパティStatus
fromが常に false になるという問題が発生します。var opStatus = _journalRepository.DeleteJournal(selectedJournal);
これにより、発生してはならない HTML 例外がスローされます。
編集
Application_Start を次のように変更しました。
しかし、私はまだ同じエラーがあります。
編集 - 問題2の解決
ユニットテストクラスにマッピングを追加するのを忘れていたことが判明したため、次のことを行いました。
そして、これが問題の原因であることが判明しました。Global.asax.cs Application_Start() は単体テストで呼び出されないため、マッピングが作成されないため、単体テストの初期化で自分でこれを行う必要があったと思います。
c# - JustMock Lite を使用して外部依存関係をモックする方法
私は JustMock の無料版を使用して、封印されたクラスであるGetUserSettingsResponseのようないくつかの外部依存関係をモックしています。問題は、無料版ではシールされたクラスをモックできないことです。諸事情により完全版は使えません。以下は私のコードサンプルです:
これは、私が以下のようにモックしようとしている方法です:
編集:私のアプリケーションは、基本的に EWS マネージ API を使用して Exchange サーバーから電子メール アカウントの詳細を取得する Web サービスです。したがって、通信を開始するために、まず AutoDiscovery を実行して、ユーザーの電子メール アドレスから URL を取得します。したがって、テスト対象は GetUserSettingsResponse メソッドを内部的に呼び出す以下のメソッドです。
c# - JustMockLite を使用して基底クラスのプロパティを配置する方法
単体テストの作成には無料版の JustMock を使用しています。system.web.Http.ApiController クラスを継承する CustomApiController クラスがあります。したがって、system.web.Http.ApiController
クラスから Request というプロパティが取得されます (これはSystem.Net.Http.HttpRequestMessage
タイプです。今、私が書いているメソッドには、単体テストのようなものがあります:
これをtrueとして返すようにリクエストオブジェクトをアレンジ/モックするにはどうすればよいですか?