クロスプロセスモッキングにデルポーターを使用します
質問
クロスプロセスのモッキングには、スティーブンサンダーソンズデラポーターツールを使用しようとしています。http://blog.stevensanderson.com/2010/03/09/deleporter-cross-process-code-injection-for-aspnet/
私たちはこれを機能させる問題を経験しています。サンダーソンのブログ投稿コメントセクションで多くの人々が報告しているのと同じ問題:「各ソケットアドレス(プロトコル/ネットワークアドレス/ポート)の1つの使用のみが通常許可されています」
Sandersons Demo GuestBookプロジェクトを成功させました。ただし、「各ソケットの1つの使用法」を取得することがあります。エラー。アプリプールをリサイクルしてiiSresetを実行すると、これを修正するようです。ただし、ソケットのエラーを超えたら、このエラーが発生します。「ターゲットマシンが積極的に拒否したため、接続はできません。
誰かがデラポーターを仕事に復帰させましたか?このツールは、BDD開発に本当に役立ちます。
解決
「各ソケットアドレスの1つの使用のみ…」エラーは、2010年4月16日にSteveのGithub Commitで修正されました https://github.com/stevesanderson/deleporter/commit/f9b9f3070ec99ddf0d11bb818decadbd46c1bf70. 。 DelePorterは非常に便利だと思いました。
他のヒント
IIS 7.5で動作させるには、Gitリポジトリをクローンし、ソリューションを再構築し、そのDLLを使用する必要があることがわかりました。
Steveが提供するサンプルには、IIS5、IIS6、またはCassiniに適したWeb.configがあることに注意してください。 IIS7またはIIS Expressでこれを試している場合は、Module要素がSystem.Webセクションではなくシステムにあるようにweb.configを変更してください。
これはすべてSteveのブログ投稿で説明されていますが、スローダウンして適切に読むまで私を捕まえたので、ここで言及しています。
また、IIS Expressを使用しても「Samples/externaSemblies」フォルダーのバイナリが機能しなかったことがわかりました。しかし、DelePorterプロジェクトをコンパイルして、結果のバイナリを使用した場合、すべては問題ありませんでした。
「WhatTimeIsit」サンプルプロジェクトは「外部アセンブリ」バージョンを使用するため、コンパイルされたばかりのバージョンに置き換えるまでIIS Expressで動作しません。
一度機能すると、本当に素晴らしいツールです。