2016-08-09 4 views
0

다음 시나리오를 자동화해야합니다. 이것이 Appium을 통해 어떻게 달성 될 수 있는지. 여기Appium - iOS 응용 프로그램을 하나 닫고 다른 응용 프로그램을 다시 엽니 다.

1. Launch my application register a user with an gmail id. 
2. Close the application. 
3. Launch Safari browser and navigate to gmail login 
4. Click on the registration link. 

, 일부에 도전하는 소수점 숫자 2와 3 이 Appium 세션이 끊어 질 수있다? Appium은 Safari와 같은 사전 설치된 응용 프로그램에 대해 새 세션을 시작할 수 있습니까?

답변

1

동일한 appium 서버 인스턴스 만 사용할 수 있습니다. 서버를 죽일 필요는 없지만 두 개의 다른 드라이버 인스턴스를 사용하고 싶을 것입니다.

AppiumDriverLocalService service; 

    IOSDriver iosDriver; 

     public void setUp() throws IOException { 
      service = AppiumDriverLocalService.buildDefaultService(); 
      service.start(); 
     }  

     public void startMyApplication(){ 
      DesiredCapabilities dc = new DesiredCapabilities(); 
      dc.setCapability(MobileCapabilityType.DEVICE_NAME, "iPhone"); 
      dc.setCapability(MobileCapabilityType.UDID, "3838n838fn38jf8n838ffabcdefg"); 
      dc.setCapability(MobileCapabilityType.PLATFORM_NAME, MobilePlatform.IOS); 
      dc.setCapability(MobileCapabilityType.APP, "com.your_package.name"); 

      iosDriver = new IOSDriver("http://localhost:4723/wd/hub", dc); 
     } 

     public void testMyGoogleLoginOnMyApplication(){ 
      //I intend to do something here 
      //Once i am finished, I close my application 
      iosDriver.quit(); 
     } 

     public void startSafari(){ 
      DesiredCapabilities dc = new DesiredCapabilities(); 
      dc.setCapability(MobileCapabilityType.DEVICE_NAME, "iPhone"); 
      dc.setCapability(MobileCapabilityType.UDID, "3838n838fn38jf8n838ffabcdefg"); 
      dc.setCapability(MobileCapabilityType.PLATFORM_NAME, MobilePlatform.IOS); 
      dc.setCapability(MobileCapabilityType.APP, "com.safari_package.name"); 

      iosDriver = new IOSDriver("http://localhost:4723/wd/hub", dc); 
     } 

     public void testSafari(){ 
      //I intend to go to google and do stuff 
      //Once i am finished, I close my application 
      iosDriver.quit(); 
     } 

     public void finished(){ 
      service.stop(); 
     } 
+0

나는 이것을 시도 할 것이다. 사파리, gmail 등의 응용 프로그램 패키지 이름을 얻는 방법은 무엇입니까? – manutd

+0

다음은 도구입니다. https://help.tune.com/marketing-console/finding-ios-app-details/#bundle-lookup –

관련 문제