CodedUI テストを実行し、テスト ケースが失敗した場合は、Kill()
以下を呼び出して Internet Explorer プロセスを強制終了します。
private static readonly HashSet<string> ProcessesToKill =
new HashSet<string>(new[] { "iexplore" });
public static void Kill()
{
var runningProcessesToKill = (from p in Process.GetProcesses()
where ProcessesToKill.Contains(p.ProcessName,
StringComparer.OrdinalIgnoreCase)
select p).ToArray();
// First try to close the process in a friendly way
CloseProcess(runningProcessesToKill);
// Then wait for a while to give the processes time to terminate
WaitForProcess(runningProcessesToKill);
// If not closed kill the process.
KillProcess(runningProcessesToKill);
}
CloseMainWindow()
強制終了は、最初にプロセスを呼び出し、Close()
次にしばらく待ってからプロセスを呼び出すことによって行われKill()
ます。
残念ながら、これは JavaScript アラート ポップアップを閉じません。テストの実行が終了すると、次のように次のテストをブロックする画面に残ります。
アラートが閉じられないのはなぜですか?どうすれば修正できますか?