【发布时间】:2016-02-26 18:06:12
【问题描述】:
我刚刚在android模拟器中安装了chrome.apk文件,似乎安装成功了。但是当我尝试执行以下脚本时,它在模拟器设备中打开了 chrome 浏览器,但没有显示谷歌主页。很简单,司机就退出了。
示例代码:似乎是启动浏览器,但没有导航到谷歌主页
public static WebDriver driver;
@BeforeSuite
public static void initalizeBrowser() throws Exception {
try {
DesiredCapabilities desired = 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");
driver = new RemoteWebDriver(
new URL("http://127.0.0.1:4723/wd/hub"), desired);
driver.get("http://www.google.com");
} catch (Exception ex) {
ex.printStackTrace();
}
}
@Test
public void testCase1() throws Exception {
try {
System.out.println(driver.getTitle());
} catch (Exception ex) {
ex.printStackTrace();
}
}
@AfterSuite
public static void tearDown() throws Exception {
try {
driver.quit();
} catch (Exception ex) {
ex.printStackTrace();
}
}
有人可以帮我解决这种行为的原因吗?
【问题讨论】:
-
您是否遇到任何异常或错误?
-
是的。我在 appium 服务器 org.openqa.selenium.SessionNotCreatedException 中收到以下错误消息:无法创建新会话。 (原始错误:发生错误(原始错误:chrome 无法访问(驱动程序信息:chromedriver=2.15.322448 (52179c1b310fec1797c81ea9a20326839860b7d3),platform=Windows NT 6.1 SP1 x86_64))(警告:服务器未提供任何堆栈跟踪信息)命令持续时间或超时:354.13 秒。但在视觉上我可以看到浏览器已启动但它在没有将 url 输入地址栏的情况下关闭。
-
我不确定您是否需要将所有这些 htings(例如应用程序活动和应用程序包)用于使用 chrome
-
可以删除它们并运行。对我来说,这很有效 - DesiredCapabilities 能力 = new DesiredCapabilities();能力.setCapability(“浏览器名称”,“Chrome”);能力.setCapability("automationName","Appium");能力.setCapability(“平台名称”,“Android”); // capabilities.setCapability("avd","firstavd");能力.setCapability(“设备名称”,“MiPad”);能力.setCapability("fullReset", "true"); driver = new AndroidDriver(new URL("127.0.0.1:4723/wd/hub"), capabilities);
-
你说你安装了 chrome 对吗?但是android带有一个内置的浏览器。您可以通过更改 desired.setCapability(MobileCapabilityType.BROWSER_NAME, "Browser");检查此以获取更多信息 - appium.io/slate/en/1.4/?ruby#appium-server-capabilities
标签: java selenium-webdriver appium