Appium+;saucelabs集成(JAVA)错误

Appium+;saucelabs集成(JAVA)错误,java,selenium,appium,saucelabs,Java,Selenium,Appium,Saucelabs,我和索塞拉布联系有点困难。当我尝试连接它时,它会显示一个错误: 参数不正确。我们需要{“必需”:[“desiredCapabilities”],“可选”:[“requiredCapabilities”,“sessionId”,“id”]},您发送了[“requiredCapabilities”,“capabilities”,“desiredCapabilities”] 但我不明白为什么会这样,因为我发送了以下功能: caps.setCapability("username", "myUs

我和索塞拉布联系有点困难。当我尝试连接它时,它会显示一个错误: 参数不正确。我们需要{“必需”:[“desiredCapabilities”],“可选”:[“requiredCapabilities”,“sessionId”,“id”]},您发送了[“requiredCapabilities”,“capabilities”,“desiredCapabilities”]

但我不明白为什么会这样,因为我发送了以下功能:

    caps.setCapability("username", "myUser");
    caps.setCapability("accessKey", "myKey");
    caps.setCapability("appiumVersion", "1.5.3");
    caps.setCapability("deviceName","Samsung Galaxy Note Emulator");
    caps.setCapability("deviceOrientation", "portrait");
    caps.setCapability("browserName", "");
    caps.setCapability("platformVersion","4.1");
    caps.setCapability("platformName","Android");   
    caps.setCapability("app", "https://drive.google.com/uc?export=download&id=0B2etAlBEJtreUkJyaUxGMUh4NVE");
    caps.setCapability("appPackage", "io.appium.android.apis");
    caps.setCapability("appActivity", "io.appium.android.apis.graphics.FingerPaint");
我试着用不同的方式发送它。例如:

//private final String USERNAME = "myUser";
//private final String ACCESS_KEY = "myKey";
//http://ondemand.saucelabs.com:80/wd/hub
//private final String URL = "https://" + USERNAME + ":" + ACCESS_KEY + "@ondemand.saucelabs.com:80/wd/hub";
driver = new AndroidDriver<WebElement>(new URL(URL,caps);
//私有最终字符串USERNAME=“myUser”;
//私有最终字符串访问\u KEY=“myKey”;
//http://ondemand.saucelabs.com:80/wd/hub
//私有最终字符串URL=“https://”+USERNAME+:“+ACCESS_KEY+”@ondemand.saucelabs.com:80/wd/hub”;
驱动程序=新的AndroidDriver(新的URL(URL,大写);
但这是行不通的

而且,我也不明白为什么我只跑一次,它就把我的测试发送两次到SauceLab


我使用的是Selenium webdriver 3.0.1、jdk8 u45和appium java client 4.1.2,我也在测试Saint Labs,安装并不困难,您必须按照他们的说明操作

问题可能在你的URL中,更确切地说,在你的端口中,它不应该是443而不是80

 String URL = "https://" + USERNAME + ":" + ACCESS_KEY + "@ondemand.saucelabs.com:443/wd/hub"
而且对app参数不太确定

希望这会有所帮助

这是他们页面中的代码示例:

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;

import java.net.URL;

public class SampleSauceTest {

  public static final String USERNAME = "YOUR_USERNAME";
  public static final String ACCESS_KEY = "YOUR_ACCESS_KEY";
  public static final String URL = "https://" + USERNAME + ":" + ACCESS_KEY + "@ondemand.saucelabs.com:443/wd/hub";

  public static void main(String[] args) throws Exception {

    DesiredCapabilities caps = DesiredCapabilities.chrome();
    caps.setCapability("platform", "Windows 10");
    caps.setCapability("version", "latest");

    WebDriver driver = new RemoteWebDriver(new URL(URL), caps);

    /**
     * Goes to Sauce Lab's guinea-pig page and prints title
     */

    driver.get("https://saucelabs.com/test/guinea-pig");
    System.out.println("title of page is: " + driver.getTitle());

    driver.quit();
  }
}

我也在测试酱汁实验室,设置并不困难,你必须按照他们的指示进行

问题可能在你的URL中,更确切地说,在你的端口中,它不应该是443而不是80

 String URL = "https://" + USERNAME + ":" + ACCESS_KEY + "@ondemand.saucelabs.com:443/wd/hub"
而且对app参数不太确定

希望这会有所帮助

这是他们页面中的代码示例:

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;

import java.net.URL;

public class SampleSauceTest {

  public static final String USERNAME = "YOUR_USERNAME";
  public static final String ACCESS_KEY = "YOUR_ACCESS_KEY";
  public static final String URL = "https://" + USERNAME + ":" + ACCESS_KEY + "@ondemand.saucelabs.com:443/wd/hub";

  public static void main(String[] args) throws Exception {

    DesiredCapabilities caps = DesiredCapabilities.chrome();
    caps.setCapability("platform", "Windows 10");
    caps.setCapability("version", "latest");

    WebDriver driver = new RemoteWebDriver(new URL(URL), caps);

    /**
     * Goes to Sauce Lab's guinea-pig page and prints title
     */

    driver.get("https://saucelabs.com/test/guinea-pig");
    System.out.println("title of page is: " + driver.getTitle());

    driver.quit();
  }
}