0

私は自動化テストでは新しいです。 appiumを使用してAndroidアプリでwebviewの要素を見つけようとしています。以下 は、私が使用していたコードですが、私は大胆にそのIDを使用してdiv要素を見つけていないそのIDappviewを使ってandroidでwebviewの要素を見つける方法

private AppiumDriver<WebElement> driver; 

@Before 
public void setUp() throws Exception { 
    // set up appium 


} 
@After 
public void tearDown() throws Exception { 
    driver.quit(); 
} 

@Test 
public void webView() throws InterruptedException { 

    DesiredCapabilities capabilities = new DesiredCapabilities(); 
    capabilities.setCapability("deviceName","Android Emulator"); 

    capabilities.setCapability("appPackage", "com.hokucampusaffairs"); 
    capabilities.setCapability("appActivity", "com.mybeeps.DashboardActivity"); 
    try { 
     driver = new AndroidDriver<WebElement>(new URL("http://127.0.0.1:4723/wd/hub"), capabilities); 
    } catch (Exception e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 

    Thread.sleep(6000); 
    Set<String> contextNames = driver.getContextHandles(); 
    for (String contextName : contextNames) { 
     System.out.println(contextName); 
     if (contextName.contains("WEBVIEW")){ 
     driver.context(contextName); 
     } 
    } 
String pagesource= driver.getPageSource(); 
String url= driver.getCurrentUrl(); 
try { 
    WebElement inputField = **driver.findElement(By.id("top-container"));** 
    inputField.click(); 
} 
catch(Exception e) 
{ 
    e.printStackTrace(); 
} 

} 

コードを使用してのdiv言う見つけることができないのです。またfindelementbyTagは親要素を見つけるだけです。

私は1.8

+0

例外:そのような要素:要素が見つかりません:{ "方法": "ID"、 "選択": "トップコンテナ"} –

答えて

0

例外はあなたに答えを与えるappium/AndroidのSDK /最新バージョンのJavaを使用しています - id='top-container'

  1. で見つかりませ要素は、あなたが他のを試してみてください
  2. をWebViewのためのドライバを切り替えてくださいませんロケータ戦略、例えばもしクロムDEVツールを使用することができWebViewの検査のXPath
  3. https://developers.google.com/web/tools/chrome-devtools/remote-debugging/webviews
関連する問題