ASP.NET MVCではなく、ASP.NETアプリケーションを通過できるクローラー/スパイダーソフトウェアを知っていますか?
そのようなアプリケーションがない場合-どのようにASP.NET Webサイトの検査を開始しますか?私のアプローチは通常、アプリケーションフォルダー内のすべての* .aspxファイルを検索し、パラメーターなしでページに到達できるか、リアルタイムキラーであるWebサイトGUIを介して到達できるかどうかを1つずつチェックすることです。
JavaScriptリンクは、自動スパイダリングにとって大きな問題です。個人的には、私は Burp suite を使用する傾向があり、サイトをナビゲートして手動でページリストを作成してから、ページごとのスキャンを使用します。
理論的には、ブラウザエンジン自体に依存してスパイダーを実行するスパイダーを使用する方法です(そのため、ブラウザーを「駆動する」ツールの一部が役立つ場合があります)。
別のオプションは、JavaScript解析エンジンをプログラミング言語で利用できるようにすることです。その面で役立つ可能性があると私が見た1つのことは、Ruby内からJavaScript解析エンジンへのアクセスを可能にする this project from rubyracer です。私は試していませんが、フォームの送信時にJavaScriptを評価し、そこからクモがたどる適切なURLを抽出するために、そのようなものを使用できる可能性があると考えていました。
ソフトウェア品質エンジニア/テスターは、クローラーやスパイダーに依存してバグをテストしていません-アプリケーションセキュリティエンジニア/テスターがどちらかを実行する必要があるとは思いません...
代わりに、SQEは、Selenium RC/Bromine、Watir/WatiN/Watij、Sahi、HtmlUnit、WebDriverなどの開発テストフレームワーク(またはテストハーネス)に大きく依存しています。 HP QTP、IBM Rational Functional Tester、TestComplete、VisualStudio Tester Edition 2010などのハイエンドの商用QAツールを利用する人もいます。
次の理由により、SQEは通常、実行フローのためのアプリの実行を自動化しません。
テストの自動化の問題は、アプリがすばやく変更され、通常、これらの変更に対応するためにテストハーネスを継続的に変更する必要があることです。 ICONIXなどのアジャイル手法では、堅牢性テストはドメインモデルとシーケンス図(通常はUML)から生成されたコードですが、コードのチャーンや新しいビルド中にテストケースの再構築を自動化する方法はたくさんありますが、これは頻繁に行われますおそらくメタプログラミングは必要ありません。