2

私はちょうど今TDDを学び始めました。また、コントローラーのテストに問題があります。だから、私は説明しようとします。私はコントローラーを持っています:

public AccountController(IStoreService storeService)
    {
        _storeService = storeService;
    }

public virtual ActionResult RenderBalance()
    {
        var model = _storeService.GetStorePageBalanceModel();
        return PartialView("MyControl", model);
    }

ここで、RenderBalance アクションをテストします。

        public class when_balance_renders
    {
        private static Mock<IStoreService> storeService = new Mock<IStoreService>();
        private static AccountController controller;
        private static ActionResult result; 

        private Establish context = () =>
                                        {
                                           controller = new AccountController(storeService.Object);
                                           result = controller.RenderBalance();
                                        };

        private It should_be_not_null_result = () => { result.ShouldNotBeNull(); };
    }

しかし、このコードは機能しません。デバッグ モードで次のエラーが発生しました: ファイル、アセンブリ、またはその依存関係の 1 つを読み込めませんでした。不正な形式のプログラムをロードしようとしました。

どうすれば修正できますか?また、コントローラーのテストに関する推奨事項を教えてください。ありがとう、ノギン・アントン。

4

1 に答える 1

0

TDD を使い始めたばかりの場合は、 http://martinfowler.com/articles/mocksArentStubs.htmlで指摘されているように、従来の TDD などのより単純なアプローチを試してください。

また、このエラーが発生した場合は、ファイルまたはアセンブリ、またはその依存関係の 1 つを読み込めませんでした。不正な形式のプログラムをロードしようとしました。

非常に基本的な設定が間違っています。少なくともコンパイルできるようになるまでコード行を削除してから、そこから先に進みます。

于 2013-07-09T22:28:28.953 に答える