2010-09-13 33 views
0

system.logElementTree();UI自動化iphone應用程序中的警報處理無法取消選項

var target = UIATarget.localTarget(); target.onAlert =功能onAlert(警報){OILOGogger.logDebug(「There was a alert!」);點擊({x:164,y:278});點擊按鈕。 返回false; 即使沒有點擊選項SYSTEN不執行任何操作 誰能幫我...

+0

不應該使用alert.buttons()而不是target.onAlert.buttons()? – 2010-09-22 10:27:30

回答

0

我只是發表了博客文章關於UI自動化和處理警報: http://www.conduce.net/Blog.aspx?f=Automated-Test-of-iPad-Apps

基本上下面的警告處理工作對我來說:

UIATarget.onAlert = function onAlert(alert){ 
    var name = alert.name(); 
    UIALogger.logMessage("alert "+name+" encountered"); 
    if(name == "errorAlert"){ 
     var positionX = 500; 
     for(var positionY=300; positionY<600;positionY+=10){ 
      target.tap({x:positionX,y:positionY}); 
     } 
     return true; 
    } 
    return false; 
}
1

代替竹子建議它通過各個位置循環,你可以試試這個你onAlert函數中:

alert.tapWithOptions({tapOffset:{x:0.5, y:0.6}}); 

這個水龍頭的目標是UIAAlert(x:0.5)和60%從上到下(y:0.6)的中間位置。這隻有一個按鈕時才起作用。你有多個按鈕,那麼你必須改變x的值。這對我有用。

0

我會在處理警報時使用「cancelButton」或「defaultButton」方法。

相關問題