简体   繁体   English

如何在Appium中使用Java清除预填充的文本框值?

[英]How to clear pre-filled text box value using java in appium?

I have already tried multiple codes(using java) to clear password field of my android application such as, 我已经尝试了多种代码(使用Java)来清除我的android应用程序的密码字段,例如,

driver.findElement(By.id("..")).clear();
driver.findElement(By.id("..")).sendKeys(" ");

Also i tried all the answers given in below link, 我也尝试了下面链接中给出的所有答案,

Appium : Clear a field Appium:清除字段

But nothing does work for me. 但是对我没有任何作用。

I'm trying to automate my android application using Appium 1.4.13. 我正在尝试使用Appium 1.4.13自动化我的android应用程序。

Try this code ! 试试这个代码!

WebElement element=appiumDriver.findElement(By.xpath("xpathString"));
element.click();
element.sendKeys(Keys.CONTROL + "a");
element.sendKeys(Keys.DELETE);

You have to simply use 你只需要简单地使用

driver.findElement(By.id("com.example.jiteshmohite.ycce:id/password")).clear();

check your xpath id and make sure it is correct. 检查您的xpath ID,并确保它是正确的。

Here is my code which works for me. 这是对我有用的代码。

        // Create object of DesiredCapabilities class

        DesiredCapabilities capabilities = new DesiredCapabilities();

        // Optional

        capabilities.setCapability(CapabilityType.BROWSER_NAME, "");

        // Specify the device name (any name)

        capabilities.setCapability("deviceName", "My New Phone");

        // Platform version

        capabilities.setCapability("platformVersion", "4.4.2");

        // platform name

        capabilities.setCapability("platformName", "Android");

        // specify the application package that we copied from appium

        capabilities.setCapability("appPackage", "com.example.jiteshmohite.ycce");

        // specify the application activity that we copied from appium

        capabilities.setCapability("appActivity", ".LoginActivity");

        // Start android driver I used 4727 port by default it will be 4723

        driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);

        // Specify the implicit wait of 5 second
//
        driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);


        driver.findElement(By.id("com.example.jiteshmohite.ycce:id/password")).clear();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM