Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/188.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Appium-如何清除密码字段?_Android_Passwords_Appium_Textfield - Fatal编程技术网

Android Appium-如何清除密码字段?

Android Appium-如何清除密码字段?,android,passwords,appium,textfield,Android,Passwords,Appium,Textfield,我遇到以下问题,无法通过AppiumDriver(AndroidDriver)清除密码字段。“clear()”命令不会清除该字段,然后新文本将设置在旧文本的前面 奇怪的是一个简单文本字段(appium日志)的清晰行为: 清除文本失败。试图通过选择“全部”来清除 并删除 清除文本失败。试图通过 发送删除密钥 在那之后,文本真的被清除了 返回密码字段。可能是因为Appium无法在密码字段中看到任何字符,然后就好像该字段未填充一样 我在其他文章中找到了一些解决方法,可以标记整个字段并发送delete命

我遇到以下问题,无法通过AppiumDriver(AndroidDriver)清除密码字段。“clear()”命令不会清除该字段,然后新文本将设置在旧文本的前面

奇怪的是一个简单文本字段(appium日志)的清晰行为:

  • 清除文本失败。试图通过选择“全部”来清除 并删除
  • 清除文本失败。试图通过 发送删除密钥
  • 在那之后,文本真的被清除了

    返回密码字段。可能是因为Appium无法在密码字段中看到任何字符,然后就好像该字段未填充一样

    我在其他文章中找到了一些解决方法,可以标记整个字段并发送delete命令,但AppiumDriver本身不支持sendKeyEvent()命令。所以这对我不起作用


    使用:Appium 1.4.8、Appium java client 3.0.0

    我在使用Android Emulator+Appium+python清除密码字段时也遇到了问题。其他地方提到的解决方法需要长按或双击select all,但emulator通过取消选择很高兴地覆盖了这一点,即使我尝试在emulator上手动执行

    在Appium和emulator都有一些可用的修复程序之前,我决定在测试中的每次
    tearDown()
    过程中都采取这种激烈的行动:

    self.driver.reset()


    除其他外,它会清除密码字段;)如果您需要设置“noReset”功能,请注意,下面的代码将清除文本字段中输入的字符

            IOSElement Phone = driver.findElement(By.name(CUSTOMER_PHONE_NUMBER));
            String text1 = Phone.getText();
            int maxChars1 = text1.length();
            for(int i =0;i < maxChars1;i++) {
            Phone.sendKeys(Keys.BACK_SPACE);
            }
    
    IOSElement Phone=driver.findElement(按.name(客户电话号码));
    String text1=Phone.getText();
    int maxChars1=text1.length();
    对于(int i=0;i
    您正在使用仿真器吗?是的,我发现即使我手动与密码字段交互,选择全部也会被覆盖。嗨,kiminoa-不,我使用的是真实的设备。请确保调用的是正确的驱动程序实例。e、 自我驱动。对我来说,self.driver.clear()可以工作。您可以尝试先发送空字符,然后再发送密码。e、 首先,谢谢你的回答,但这不是我喜欢的解决方法。因为我不会离开视图,但据我所知,reset()将重新启动应用程序。