无法使用 android 模拟器打开 chrome 中的页面
Unable to open the page in chrome using android emulator
我刚刚编写了启动 chrome 浏览器并导航至 google 主页的简单脚本。但是当我尝试执行我的脚本时 运行 没有任何问题,但它在地址栏中显示 .data.,而不是导航到 google 主页,如下所示:
示例代码:
private WebDriver driver;
DesiredCapabilities desired = new DesiredCapabilities().android();
desired.setCapability(MobileCapabilityType.DEVICE_NAME,
"Android Emulator");
desired.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android");
desired.setCapability(MobileCapabilityType.PLATFORM_VERSION,
"4.2.2");
desired.setCapability(MobileCapabilityType.BROWSER_NAME, "Chrome");
desired.setCapability(MobileCapabilityType.APP_PACKAGE,
"com.android.chrome");
desired.setCapability(MobileCapabilityType.APP_ACTIVITY,
"com.google.android.apps.chrome.Main");
// desired.setCapability("fullReset", "true");
URL url=new URL("http://127.0.0.1:4723/wd/hub");
driver = new RemoteWebDriver(url, desired);
driver.get("http://www.google.com");
谁能帮帮我。
driver.get("www.google.com");
您的代码中缺少此内容。会怎样。它已正确创建驱动程序。但是你必须告诉他去哪里。当您在临时配置文件中打开网络驱动程序时,您可以获得正常的主页(如果那是您正在寻找的)。如果你想打开一个特定的浏览器配置文件,你必须告诉它在创建 chromedirver 时使用标志 --user-data-dir 打开该配置文件。
是的,您提供的代码永远无法打开您的浏览器。它的功能不正确。
请尝试修改后的代码,如下所示。
public static AppiumDriver driver = null;
@BeforeSuite
public static void driverInitalize() throws Exception {
try {
DesiredCapabilities desiredCapabilities = new DesiredCapabilities();
desiredCapabilities.setCapability(MobileCapabilityType.BROWSER_NAME, "Chrome");
desiredCapabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android");
desiredCapabilities.setCapability(MobileCapabilityType.PLATFORM_VERSION, "4.4");
desiredCapabilities.setCapability(MobileCapabilityType.DEVICE_NAME, "a69fd414");
URL url = new URL("http://127.0.0.1:4723/wd/hub");
driver = new AndroidDriver(url, desiredCapabilities);
} catch (Exception ex) {
ex.printStackTrace();
}
}
您必须使用功能 BROWSER_NAME
来指定测试用例是 Web 应用程序。您不应将应用程序 activity 和应用程序包功能用于 Web 应用程序。
您可以从 here
查看有关 Appium 移动 Web 应用程序自动化的更多详细信息 code/configs
我已经解决了这个问题。这是因为使用了 chrome 驱动程序和 chrome apk 文件的不兼容版本。
它现在按预期工作。
我刚刚编写了启动 chrome 浏览器并导航至 google 主页的简单脚本。但是当我尝试执行我的脚本时 运行 没有任何问题,但它在地址栏中显示 .data.,而不是导航到 google 主页,如下所示:
示例代码:
private WebDriver driver;
DesiredCapabilities desired = new DesiredCapabilities().android();
desired.setCapability(MobileCapabilityType.DEVICE_NAME,
"Android Emulator");
desired.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android");
desired.setCapability(MobileCapabilityType.PLATFORM_VERSION,
"4.2.2");
desired.setCapability(MobileCapabilityType.BROWSER_NAME, "Chrome");
desired.setCapability(MobileCapabilityType.APP_PACKAGE,
"com.android.chrome");
desired.setCapability(MobileCapabilityType.APP_ACTIVITY,
"com.google.android.apps.chrome.Main");
// desired.setCapability("fullReset", "true");
URL url=new URL("http://127.0.0.1:4723/wd/hub");
driver = new RemoteWebDriver(url, desired);
driver.get("http://www.google.com");
谁能帮帮我。
driver.get("www.google.com");
您的代码中缺少此内容。会怎样。它已正确创建驱动程序。但是你必须告诉他去哪里。当您在临时配置文件中打开网络驱动程序时,您可以获得正常的主页(如果那是您正在寻找的)。如果你想打开一个特定的浏览器配置文件,你必须告诉它在创建 chromedirver 时使用标志 --user-data-dir 打开该配置文件。
是的,您提供的代码永远无法打开您的浏览器。它的功能不正确。
请尝试修改后的代码,如下所示。
public static AppiumDriver driver = null;
@BeforeSuite
public static void driverInitalize() throws Exception {
try {
DesiredCapabilities desiredCapabilities = new DesiredCapabilities();
desiredCapabilities.setCapability(MobileCapabilityType.BROWSER_NAME, "Chrome");
desiredCapabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android");
desiredCapabilities.setCapability(MobileCapabilityType.PLATFORM_VERSION, "4.4");
desiredCapabilities.setCapability(MobileCapabilityType.DEVICE_NAME, "a69fd414");
URL url = new URL("http://127.0.0.1:4723/wd/hub");
driver = new AndroidDriver(url, desiredCapabilities);
} catch (Exception ex) {
ex.printStackTrace();
}
}
您必须使用功能 BROWSER_NAME
来指定测试用例是 Web 应用程序。您不应将应用程序 activity 和应用程序包功能用于 Web 应用程序。
您可以从 here
查看有关 Appium 移动 Web 应用程序自动化的更多详细信息 code/configs我已经解决了这个问题。这是因为使用了 chrome 驱动程序和 chrome apk 文件的不兼容版本。
它现在按预期工作。