私は自動化テストの初心者です。appium を使用して Android アプリの webview で要素を見つけようとしています。以下は私が使用しているコードですが、そのIDを使用してdivを見つけることができません
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();
}
}
太字のコードは、その id を使用して div を見つけていません。また、 findelementbyTag は親要素のみを検索しています。
appium /Android sdk/Java 1.8 の最新バージョンを使用しています