2011-06-08 31 views
6

Uygulamamda, tıklatıldığında uygulamanın içinde farklı eylemlerin gerçekleştirilmesine neden olan bağlantılara sahip bir UIWebView var. Bunu, sürekli bir bütünleştirme yapısına eklenebilmesi için automated testing ile test edebilmek istiyorum. Ancak, UIAWebView için the documentation is rather sparse ve bunun işe yaraması için boşuna çalıştım.UIWebView içeriklerini Cihazlardaki UI Otomasyonundan Erişim

UIWebView'un içindeki herhangi bir bağlantı ile etkileşimde bulunan herhangi biri var mı? İşlemlerinin doğru olup olmadığını kontrol edebilirsiniz?

cevap

1

UIWebView'da yineleme/erişim bağlantıları bulmak için bir yol bulamadı, ancak bu sizin için çalışır mı? ile sayfa kaynağını erişin:

NSString *source = [webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByTagName('html')[0].outerHTML"]; 

o zaman bağlantılar olduğunu düşündüğümüz etiketleri arayın (örn href = ...)

Sonra yine "basarak" bu bağlantıları gerekiyor. Bağlantıda verilen URL'ye gitmeniz yeterli mi? Eğer öyleyse, bunu yapmak için sadece loadRequest kullanın. Daha gelişmiş davranışlara ihtiyacınız varsa (örneğin, doğru javascript'lerin çalıştırıldığından emin olun), bunları ayrıştırmak ve bunları stringByEvaluatingJavaScriptFromString ile yürütmek için daha fazla sihir yapmanız gerekir.