2013-09-06 5 views
1

현재 KIF 프레임 워크를 사용하여 iOS 앱에 대한 UIAutomation 테스트를 개발 중입니다. 어떤 시점에서 앱은 로그인 페이지가있는 WebView를 열고 사용자 이름과 비밀번호를 입력 한 다음 로그인 버튼을 누르면 모든 것이 자동화되어야합니다.현재 UIWebVIew 요소 받기

내 질문은 : 당신이 할 수 있다면, 그것은 좋은 것 또한

UIWebView *webView = // . . . ? 

: 난에서와 같이 웹보기 UI 요소를 얻을 수있는 방법, 시간에 특정 순간에 페이지를 로그인 응용 프로그램이 표시 것을 알고 같은 방법 두 텍스트 필드 (사용자 이름 및 암호)을 얻는 것을 말해 :

UITextField *textField = // ... ? 

감사합니다.

+0

귀하의 답변은 좋으며 도움이됩니다. 감사합니다. 그렇다면 어떻게 webView를 얻을 수 있습니까? 그게 내 질문이다. – fanton

+0

내 대답은 내 도움이 : D 조, 내 말이 이해가 안다면 .. 아니면 내가 실제로 귀하의 문제를 해결하는 경우 – abbood

+0

@ FlaviusAnton 내 편집 된 답변을 확인하거나 만족 시키면 내 대답을 똑딱 똑딱 내 대답을 확인하십시오. 감사합니다 –

답변

2

아이디어는 당신이 웹보기 위임 기능에 notifiying 코드를 넣어야 할 것이다위한 웹보기가로드 된 .. 후 웹보기 잡아 KIF 할 것입니다 webViewDidFinishLoad

에서

+ (id)stepToWaitForNotificationName:(NSString*)name object:(id)object;

.. 당신이 잠시 동안 KIF를 사용했다면 당신은 당신이 당신이 NSNotification을 받았다 후에 만 ​​조치를 인스턴스화 할 수 있다는 사실을 알고 .. NSNotification이 넣을 수 있습니다 .. this이는 KIF의 방법입니다

UIWebView 자체를 찾는 것과 마찬가지로 iOS의 다른 UIElement와 마찬가지로 accessibility label을 지정하면됩니다.

2

사용이 코드 :

NSString *myText = [webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.textContent"]; 

또는 모든 데이터

NSString *html = [webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.outerHTML"]; 

또는 당신이 코드가 유용 희망 Check this link

를 들어

.

+0

네, 그게 좋겠지 만, 그 웹뷰에 손을 얹은 후에야. 어떻게해야합니까? – fanton