当前位置: 首页 > 知识库问答 >
问题:

获取Selenium Webdriver异常:无法分析远程响应:参数不正确

梁丘波鸿
2023-03-14

我试图使用selenium webdriver和Appium在macbook上为android应用程序设置自动化。

package com.tas.androidtest;
import java.io.File;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.concurrent.TimeUnit;
import org.openqa.selenium.By;
import org.openqa.selenium.remote.DesiredCapabilities;
import io.appium.java_client.MobileElement;
import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.remote.AndroidMobileCapabilityType;
import io.appium.java_client.remote.MobileCapabilityType;
import io.appium.java_client.remote.MobilePlatform;
import junit.framework.Assert;

public class MyFirstAppiumDroidTest {

public static void main(String[] args) throws MalformedURLException {
    File appDir= new File(System.getProperty("user.dir")+"/app");
       File app= new File(appDir, "selendroid-test-app-0.17.0.apk");

       //declaring Andriod platform properties
       DesiredCapabilities capa = new DesiredCapabilities();
       capa.setCapability("deviceName","Android");
       capa.setCapability("platformVersion", "6.0.1");
       capa.setCapability("platformName",MobilePlatform.ANDROID);
       capa.setCapability("app", app.getAbsolutePath());
       capa.setCapability("appPackage", "io.selendriod.testapp");
       capa.setCapability("appActivity","io.selendriod.testapp.HomeScreenActivity");

       //instantiating Andriod driver  
    AndroidDriver driver= new AndroidDriver(new URL("http://0.0.0.0:4723/wd/hub"),capa);
       driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
       driver.findElementById("io.selendroid.testapp:id/startUserRegistration").clear();
       driver.findElementById("io.selendroid.testapp:id/inputUsername").sendKeys("test");
       driver.findElement(By.id("io.selendroid.testapp:id/inputEmail")).sendKeys("test@mail.com");
       driver.findElement(By.id("io.selendroid.testapp:id/inputPassword")).sendKeys("12345");
       driver.hideKeyboard();
       driver.findElement(By.id("io.selendroid.testapp:id/input_adds")).click();
       driver.findElement(By.id("io.selendroid.testapp:id/btnRegisterUser")).click();
       Assert.assertEquals("napendra", driver.findElement(By.id("io.selendroid.testapp:id/label_username_data")).getText());
       driver.quit();
       System.out.print("Completed !!!");

}

}

我已经启动了appium服务器并使用maven运行了测试,但每次运行测试时都会出现错误。错误在这里:-

共有1个答案

顾乐池
2023-03-14

可能您在测试中使用的是java-client的更高版本,它与1.5.3服务器版本不兼容。

我在其他一些报告中看到了这个错误,Appium服务器更新解决了它:1.7.1现在是最新稳定的。

 类似资料:
  • 我只是尝试用IOS提供的示例应用程序用appium设置IOS。 null null null null

  • 我正在尝试解析运营商网络的USSD响应。找到一个链接https://github.com/alaasalman/ussdinterceptor,但它不支持4.2.2及以上版本。是否有任何api或方法可以达到此目的?

  • 问题内容: 今天,当我使用Selenium WebDrive时,出现错误。我的平台是mac osx。这是我的异常日志。 我不知道为什么会这样。我的Firefox路径是默认路径。谢谢您的帮助!! 问题答案: WebDriver使用端口7054(“锁定端口”)作为互斥体,以确保我们不会同时启动两个Firefox实例。您创建的每个新实例将在启动浏览器之前等待互斥体,然后在浏览器打开后立即释放互斥体。 因

  • 我需要从这个URL解析数据https://newsapi.org/v1/articles?apiKey=6946d0c07a1c4555a4186bfcade76398 我尝试过将BASE_URL和Query更改为几个不同的选项,但没有任何帮助。也许是我的物体有问题,但我找不到错误。 *****更新*****:我像评论中所说的那样更改了我的对象,但仍然使用失败函数。 主要活动。JAVA 内特沃库提

  • 我希望有人能帮我解决这个问题。 我想用WebClient创建一个Rest客户端,从API中检索响应。所以我创建了我的Spring项目,添加了webflux、lombok和h2。我还创建了一个DTO类“CashAccount”和以下方法: 当我使用“.bodyToMono(String.class)”时,所有的功能都很好,我收到了结果: 相反,当我使用“.bodyToMono(cashcount.c

  • 我创建了一个基本的.NET framework MVC web应用程序,并添加了使用Cloud Watch logs SDK向AWS Cloud Watch logs发送日志的逻辑,它在LocalSystem/LocalHost中运行良好,但当我对映像进行对接时,就开始出现异常。请指导我解决这个问题。 Amazon.Runtime.AmazonServiceException:“引发了状态为Nam