1

PowerShellで自動Webテストを作成します。 私の問題は、JavaScriptポップアップでボタンをクリックすると、イベントが終了していないので、次の行にスクリプトがハングすることです。 ポップアップが読み込まれましたが、スクリプトがハングします。PowerShell JavaScript ButtonクリックするとForce Commandが表示されますか?

強制コマンドはありますか?次の行では、コマンドレットを使用して[OK]ボタンをクリックしたいからです。

$ie.Document.getElementById("ButtonID")|foreach{$_.Click()} #never finished 

答えて

1

ブラウザでの自動テストでは、この一般的な問題に2つの方法があります。あなたの最初のオプションは、独自のモック実装ですべてのjavascript関数を再定義することです。あなたの自動化を開始する前に、これらの機能(および印刷などのような他の人を)変更

window.alert = function(msg) { log_info(msg); }; 
window.prompt = function(msg) { return fixture(msg); }; 
window.confirm = function(msg) { return randomBool; }; 

はプロセスをブロックからプロンプトを停止します。しかし、セキュリティの警告と資格情報のダイアログについては、まだ心配する必要があります。

したがって、2番目の方法は、OSレベルのウィンドウと対話できる監視ユーティリティを実行することです。 IEUnitを見てください - http://code.google.com/p/ieunit/ Windowsのスクリプトホストからのウィンドウやセキュリティ警告との対話を可能にするDesktoop(意図的に間違っている)というカスタムのActiveXコントロールを使用します。

ですから、PowerShellでActiveXオブジェクトを使用するか、この参照をたどる可能性のいずれか - ネイティブPowerShellの機能

を使用してモジュールのように、独自のdesktoopを実装する上でアイデアを http://msdn.microsoft.com/en-us/magazine/cc163301.aspx
関連する問題