【问题标题】:In Appium Sendkeys didn't work as expected, it sends more than i give to it在 Appium Sendkeys 中没有按预期工作,它发送的比我给它的多
【发布时间】:2016-05-01 14:33:54
【问题描述】:

当我点击以下代码时,我正在使用 Appium 编写 Android 应用程序的测试用例

 public void EnterQuantity() {
            wd.findElement(By.xpath("//android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.widget.RelativeLayout[1]/android.widget.ScrollView[1]/android.widget.LinearLayout[1]/android.widget.LinearLayout[3]/android.widget.LinearLayout[3]/android.widget.LinearLayout[1]/android.widget.EditText[1]")).sendKeys("1"); 
            }   

我在数量字段中得到 11 而不是 1。 我怎样才能降低写的速度,以确保只写我给的数字不加倍。

【问题讨论】:

  • 请在 appium 尝试执行 sendkeys 时发布您的日志..
  • 我把这个问题作为答案,但问题是日志中的数量是 11 作为值而不是 1。
  • 尝试在输入文本之前放置一些等待命令,并清除文本框中的文本。

标签: android automated-tests appium sendkeys


【解决方案1】:

尝试在 Android 设备中手动更改语言和输入设置中的自动更正设置

【讨论】:

  • 不,问题不是来自那里,因为自动更正已关闭
【解决方案2】:

@Emna 我相信它会调用EnterQuantity() 两次。尝试在此函数中添加点击元素(例如提交按钮)以缩小根本原因

【讨论】:

  • 我不这么认为,因为当我输入一个像 2780 一样的大数字时,它会被写成 227800 或 27800 或其他超过 4 位的组合。但我从来没有 27802780
  • @Emna 明白了。但是你可以在给出发送键后尝试点击或功能内的任何按钮吗?
  • 这已经是我正在做的例子,我输入价格和数量然后点击购买订单,然后我转到订单列表,我看到这个订单的价格和数量具有附加效果11 代替 1 和 27800 代替 2780 或任何其他组合。这种情况并非一直在发生。但是假设 80%
  • 那么最好将长 xpath 声明为一个元素并单击该元素而不是同时查找和发送密钥 //code WebElement xyz=wd.findElement(By.xpath("// android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.widget.RelativeLayout[1]/android.widget.ScrollView [1]/android.widget.LinearLayout[1]/android.widget.LinearLayout[3]/android.widget.LinearLayout[3]/android.widget.LinearLayout[1]/android.widget.EditText[1]") ); xyz.sendKeys("1");
  • 请。在查找长层次结构和同时发送输入之间可能存在日志@Emna
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-29
  • 2019-06-28
  • 2019-11-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多