문제

PhoneGap을 사용하여 만들어진 하이브리드 모바일 장치에서 자동화 된 테스트를 실행하기 위해 Appium을 사용하려고 시도하고 있습니다.나는 현재 안드로이드 버전을 자동화하려고 노력하고 있습니다.

테스트가 에뮬레이터에 .apk를 설치하기 위해 테스트를 수행하고 응용 프로그램이 열립니다.노드 서버를 실행하여이를 수행하고 있습니다 (다른 방법이 있는지 확실하지 않음).이것은 내가 얻을 수있는 한 멀리 있습니다.나는 다음 단계를 확신하지 못하고, 내 앱 내에서 요소를 찾아서 그들에 대해 주장하기 위해 취해야합니다.

Python을 사용하는 예제를 찾았 기 때문에 현재 Python 테스트 스크립트를 사용하고 있습니다.그러나 나는 테스트를 실행하기 위해 거기에있는 자원이있는 한 어떤 언어로든 어떤 언어를 사용하지 않습니다.

이 시점에서 나는 어디에서 볼 수있는 곳에서 혼란스러워졌습니다.Appium 웹 사이트는 테스트에 사용할 명령에 대한 철저한 문서가없는 것 같습니다.

도움이 되었습니까?

해결책

현재 Appium을 사용하여 하이브리드 앱을 자동화하고 있으며 사용 가능한 문서가 거의 없습니다.그러나 나는 시행 착오로 이것을 얻는 방법을 알아 냈습니다.

전제 조건 :

1) 하이브리드 앱의 디버그 빌드

2) 크롬 브라우저> 도구> 장치 검사 - 앱의 WebView 구성 요소를 노출하려면

3) XPath를 사용하여 콘솔에서 객체를 식별해야합니다

4) 스크립트를 실행하는 동안 스위치 컨텍스트를 사용하는 동안

if(browser.equalsIgnoreCase("android")){
    DesiredCapabilities capabilities = new DesiredCapabilities();
    capabilities.setCapability(CapabilityType.BROWSER_NAME,"");
    capabilities.setCapability("deviceName","Android");
    capabilities.setCapability("device","Android");
    capabilities.setCapability("takesScreenshot","true");
    capabilities.setCapability("platformName","Android");
    capabilities.setCapability("platformVersion","4.4.2");
    capabilities.setCapability("appPackage","uk.co.ee.myee");
    capabilities.setCapability("appActivity","uk.co.ee.myee.Launcher");

    capabilities.setCapability("udid","989fb005");

    driver = new AppiumDriver(new URL("http://0.0.0.0:4723/wd/hub"),capabilities);
    //driver = new AppiumSwipeableDriver(new URL("galaxy_s5_scl23.appkitbox.com:50305"),capabilities);

    touch = new TouchAction(driver);
    Set<String> contextNames = driver.getContextHandles();
    for (String contextName : contextNames) {
        System.out.println(contextName);
        if (contextName.contains("WEBVIEW")){
            driver.context(contextName);
        }
    }
}
.

다른 팁

Inspector (Appium GUI)를 사용하고 앱의 기본 부분 만 지원하지만 레코드를 사용하십시오.

아카이브에서 샘플 테스트 스크립트를 찾아야합니다. https://github.com./ projects / java_android / src / projects / java_android / src / test / java / appium / tutorial / android 자바에 있습니다.

에 도움이 될 수 있습니다.

하이브리드 앱의 경우 Appium 모드에서 4.4 위의 Android 버전을 사용할 수 있으며 덜 버전은 "Selendroid 모드"를 사용하여 Appium의 "Selendroid Mode"를 사용할 수 있습니다.Selendroid 모드에서 검사하기 위해 "Selendroid Inpector"를 사용하여 "Selendroid Inpector"디버그 모드로 전환하고 URL을 치십시오. "Yourlocaldomain : 8080 / 검사관" Appium 모드의 경우 Windows 또는 Mac에서 GUI Appium을 사용하여 요소를 찾을 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top