처음에는 영어 실력에 대해 사과하고 싶습니다. 나는 하이브리드 안드로이드 응용 프로그램에 대한 자동화 된 테스트를 작성합니다. 이 응용 프로그램의 GUI는 HTML5/JS/CSS3 (angularJS 프레임 워크)로 작성되었습니다. 모든 데이터 형식을 테스트하고 싶습니다. 양식은 시작시 일부 데이터로 채워집니다 (서버에서 수신). 새 데이터를 입력하려면 현재 값을 지우고 새 값을 입력해야합니다. 새 텍스트를 입력하려면 다음을 사용하십시오.Robotium의 Android 애플리케이션에서 html5 입력 테스트
By element = By.cssSelector("...");
solo.waitForWebElement(element);
solo.typeTextInWebElement(element, "foo", 0);
그리고 잘 작동합니다. 데이터에 문제가 발생했습니다. (왜 몰라) 인덱스 매개 변수를 얻을 수
solo.clearTextInWebElement(item);
이 방법은, 그것은 단지 지정된 요소를 잡을 수있는 "으로"개체를 사용하십시오 Robotium 문서에서 나는 방법을 발견했다. 코드를 다음과 같이 사용하기로 결정했습니다.
By item = By.cssSelector("input:nth-child(3)");
this.solo.waitForWebElement(item);
this.solo.sleep(3000);
this.solo.clearTextInWebElement(item);
그래도 여전히 작동하지 않습니다. Robotium이 웹 입력을 테스트하는 방법을 모르겠습니다.
안녕하십니까, By.name과 By.id를 사용하려고했는데 작동하지 않았습니다. 내 버그를 발견했습니다 (HTML 코드에 나와 공유하지 않았습니다). angularJS에서 데이터 바인딩을 사용할 때 이름 속성 값에 {{}}을 (를) 추가하는 것을 잊어 버렸습니다. 이름 값이 올바르지 않아 작동하지 않는 이유입니다. – kam