10

私のアプリは位置情報サービスを使用しており、自動テストのために、「アプリが現在の位置情報を使用したい」というポップアップを閉じられるようにしたいと考えています。ただし、UIAutomation スクリプトを使用して Instruments でこれを実行しようとすると、次のエラーが発生します。

Fail: Could not start script, target application is not frontmost.

アラートは別のプロセスによって生成されるため、この種のことは理にかなっています。それでも、この状況で人々がテストを自動化できるようにするための Apple の計画は何ですか?

4

3 に答える 3

1
**Try**

UIATarget.onAlert = function onAlert(alert)
        {
        return true;
        }
alertTitle = target.frontMostApp().alert().name();
if(alertTitle==="APP Would Like To Use Your Current Location")
{
target.frontMostApp().alert().buttons()["OK"].tap();
}
于 2013-03-29T11:36:57.777 に答える
0

解決策は、AppleScript を使用することであり、アラートが表示されるように十分な遅延の後に実行されます。シミュレータのウィンドウにあるアラート ボタンをクリックするように指示します。

于 2013-03-26T23:27:55.760 に答える
0

Location request ダイアログの表示をトリガーする前に、このコードを使用します。アプリ名を囲む特殊な引用符に注意してください。

UIATarget.onAlert = function onAlert(alert)
{
    if( alert.name()=="“local” Would Like to Use Your Current Location" )
    {
        alert.buttons()["OK"].tap();
    }
    else
    {
        UIALogger.logFail( "Location request dialog expected.");
    }
    return true;
}
于 2013-08-12T13:39:55.763 に答える