无法使用Selendroid切换到WEBVIEW,获取WebDriverException

时间:2015-09-02 13:43:45

标签: selendroid

我试图使用Selendroid自动化混合应用程序。

我在" driver.switchTo()。窗口中获得异常(" WEBVIEW")。

以下是代码。

WebElement uname;
WebElement password;

@BeforeClass
public static void setUp() throws Exception{

    System.out.println("Set up in progress");
    SelendroidConfiguration config = new SelendroidConfiguration();
    config.addSupportedApp("D:DJ/HDFC/iAgent.apk");

    if(selendroidServer!=null){
        selendroidServer.stopSelendroid();
    }
    selendroidServer = new SelendroidLauncher(config);
    selendroidServer.launchSelendroid();

    SelendroidCapabilities capa = new SelendroidCapabilities();
    capa.setAut("com.hdfclife.msd:4.85");
    capa.setEmulator(false);
    //capa.setPlatformVersion(DeviceTargetPlatform.ANDROID19);
    driver = new SelendroidDriver(capa);


}

@Test
public void selendroidTest() throws InterruptedException{
    System.out.println("Hello.. mSD under Test -- " + driver.getCurrentUrl());

    //driver.switchTo().activeElement();
    driver.switchTo().window("WEBVIEW");

    Thread.sleep(10000);
    uname = driver.findElement(By.name("username"));
    uname.sendKeys("110105");
    Thread.sleep(3000);

    password = driver.findElement(By.name("password"));
    password.sendKeys("Hdfc@123");
    Thread.sleep(3000);

    WebElement loginBtn = driver.findElement(By.id("loginButton"));
    loginBtn.click();
    Thread.sleep(3000);


}

@AfterClass
public static void tearDown(){

    selendroidServer.stopSelendroid();
    driver.quit();
}

以下是错误显示。

org.openqa.selenium.WebDriverException:CATCH_ALL:java.lang.NullPointerException     at io.selendroid.server.model.internal.WebViewHandleMapper.getWebViewByHandle(WebViewHandleMapper.java:49)     在io.selendroid.server.model.SelendroidWebDriver.init(SelendroidWebDriver.java:310)     在io.selendroid.server.model.SelendroidWebDriver。(SelendroidWebDriver.java:87)

任何人都可以为此提供帮助。

谢谢, Dheeraj

1 个答案:

答案 0 :(得分:0)

在driver.switchto语句中检查WEBVIEW_01和WEBVIEW_02以及WEBVIEW。 Web视图的标识符也可以如上所示。