Appium連携で、iOSのモバイルテスト終了時にセッションを終了できない。

Appium連携でのiOSのモバイルテスト(safariブラウザでのテスト)において、”Close Application”アクションを使用しても、WebDriverのセッションを終了できません。
本現象の回避策として、ユーザコードで、WebDriverのAPIを使用したメソッドを用意する必要があります。

サンプルコード:
public void closeWindow()
{
// エンドポイントからWebDriverの全てのインスタンスを取得
IWebDriverEndpoint endpoint = Host.Current.TryGetAsWebDriverEndpoint();
Report.Log(ReportLevel.Info, “endpoint name : ” + endpoint.DisplayName);
IEnumerator drivers = endpoint.WebDrivers.GetEnumerator();
OpenQA.Selenium.IWebDriver driver = null;

// WebDriverの対象のインスタンスを取得
while(drivers.MoveNext()) {
driver = drivers.Current;
Report.Log(ReportLevel.Info, “driver name : ” + driver);
}

// 5秒待つ(処理を安定させるため)
Delay.Milliseconds(5000);
driver.Close(); // ブラウザのウィンドウタブを閉じる
driver.Quit(); // WebDriverのセッションを終了する
}