私たちの目標は: .net winform に埋め込まれた Watin 対応のブラウザー テストです。
現在、ブラウザの動作を winform に埋め込むために .net WebBrowser コントロールを使用しています。次のようなコードを使用して、フォームの WebBroswer コントロールに WatiN をアタッチします (prostynick に感謝します)。
var thread = new Thread(() =>
{
Settings.AutoStartDialogWatcher = false;
var ie = new IE(webBrowser1.ActiveXInstance);
ie.GoTo("http://www.google.com");
});
thread.SetApartmentState(ApartmentState.STA);
thread.Start();
問題はこれです - 「winform ブラウザ」は、テスト/自動化中にポップアップを処理する必要があります。
質問: Watin が winforms webBrowser コントロールにアタッチされている場合 (WatiN で生成された独自の IE ウィンドウを使用していない場合)、ポップアップをどのように処理できますか?
a) Watin の DialogWatcher は引き続き使用できますか? もしそうなら...どのように?
b) そうでない場合は、おそらく独自の DialogWatcher を作成できますが、追加するには hWnd または processID が必要です。Waitin が独自のウィンドウまたはプロセスを持たないこのシナリオでは、どこで正しい hWnd または processId を取得できますか?
アイデアをお寄せいただきありがとうございます...同じ目標に到達する別のアプローチを歓迎します!