2016-11-08 5 views
1

saucelabsを使用して3つのブラウザでスクリプトを実行できますが、モバイルデバイスとipadで実行する必要があります。ある人が私にどのようにdesiredCapabilitiesを追加することができますか?私のコードは次の通りです:saucelabsを使ってアンドロイド、iOS、ipadでseleniumテストスクリプトを実行する方法

public static Object[][] sauceBrowserDataProvider(Method testMethod) { 
    return new Object[][]{ 
      //new Object[]{"internet explorer", "11", "Windows 8.1"}, 
      //new Object[]{"firefox", "44", "Windows 7"}, 
      new Object[]{"browser", "44", "Android"}, 
      new Object[]{"chrome", "51","Windows 7"}, 
      new Object[]{"firefox", "44","iOS"} 
    }; 
} 

private WebDriver createDriver(String browser, String version, String os) throws MalformedURLException { 
    DesiredCapabilities capabilities = new DesiredCapabilities(); 
    capabilities.setCapability(CapabilityType.BROWSER_NAME, browser); 
    if (version != null) { 
     capabilities.setCapability(CapabilityType.VERSION, version); 
    } 
    capabilities.setCapability(CapabilityType.PLATFORM, os); 
    capabilities.setCapability("name", "Sauce Sample Test"); 
    webDriver.set(new RemoteWebDriver(
      new URL("http://" + authentication.getUsername() + ":" + authentication.getAccessKey() + "@ondemand.saucelabs.com:80/wd/hub"), 
      capabilities)); 
    sessionId.set(((RemoteWebDriver) getWebDriver()).getSessionId().toString()); 
    return webDriver.get(); 
} 

@Test(dataProvider = "hardCodedBrowsers") 
public void webDriver(String browser, String version, String os) throws Exception { 
     WebDriver driver = createDriver(browser, version, os); 
} 

私は3つのブラウザで実行することができますが、モバイルデバイスを実行することはできません。私を助けてください。私はBrowserStackと同様のものを試してみましたが、それは動作します

capabilities.setCapability(CapabilityType.deviceName, "Google Nexus 7 HD Emulator"); 
capabilities.setCapability(CapabilityType.browserName, "Safari"); 

答えて

0

は、uは、このような何かを試してみました。

お知らせください。

+0

私はこの1つも試しました。しかし、それは動作しません。 –

+0

こんにちは、働いていないのはどういう意味ですか?エラーメッセージが表示されますか?それを修正できましたか? – pjcalvo

0

プライベートwebdriverをcreateDriverは、()でMalformedURLException {

DesiredCapabilities caps = new DesiredCapabilities(); 

    /*capabilities.setCapability("platformName", platformName); 
    capabilities.setCapability("deviceName", deviceName); 
    capabilities.setCapability("platformVersion", platformVersion); 
    //capabilities.setCapability("app", this.appURI); 
    capabilities.setCapability("browserName", browserName); 
    capabilities.setCapability("deviceOrientation", deviceOrientation); 
    capabilities.setCapability("appiumVersion", appiumVersion);*/ 

    caps.setCapability("appiumVersion", "1.5.3"); 
    caps.setCapability("deviceName","iPhone 6s Simulator"); 
    caps.setCapability("deviceOrientation", "portrait"); 
    caps.setCapability("platformVersion","9.1"); 
    caps.setCapability("platformName", "iOS"); 
    caps.setCapability("browserName", "Safari"); 

}

をスローし、私はあなたがQMetryオートメーションフレームワークを使用することができ君たち

0

私のスクリプトとその作業罰金now.Thankにこのコードを追加しましたconfigurationサイドコードを提供することができます。

リモートドライバを使用し、以下のプロパティを設定してソースラボでの実行を指示する必要があります。

remote.server=http://username:[email protected]:80/wd/hub 
remote.port=80 

適切なドライバ機能を提供します。 setting driver capabilitiesを参照してください。

注:ドライバ名にリモートドライバを指定していることを確認してください。たとえば

driver.name=firefoxRemoteDriver 
関連する問題