当前位置: 首页 > 知识库问答 >
问题:

android手机应用无法点击按钮

艾谦
2023-03-14

我是使用Appium和TestNg测试移动应用程序自动化的新手。我正在练习自动化amazon应用程序,应用程序已经成功启动,但当我尝试单击登录选项时,它得到了:

“失败:login org.openqa.selenium.NosuChelementException:无法使用给定的搜索参数在页面上找到元素。(警告:服务器未提供任何stacktrace信息)命令持续时间或超时:0毫秒。”

    public void login() throws InterruptedException{

        System.out.println("Login check");
        Thread.sleep(3000);
//      String sample = driver.findElementByXPath("//*[@class='android.widget.Button' and @index='5']").getText();
        System.out.println("Next sleep");

//      driver.findElement(By.xpath("//[@class='android.widget.Button' and @index='5']')]")).click();
//      driver.findElement(By.id("in.amazon.mShop.android.shopping:id/sign_in_button")).click();
        driver.findElement(By.xpath("//android.widget.Button[@index='5']")).click();
        Thread.sleep(3000);
        System.out.println("Pass");

    }

共有1个答案

胡光霁
2023-03-14

“//android.widget.button[@index='5']”是无效的xpath定位器。如果你想使用什么索引(但我强烈建议不要这样做),请这样做:

“(//android.widget.button)[5]”

但在您的情况下,最好按resource-id进行搜索:

driver.findElement(By.id("sign_in_button")).click();
 类似资料:
  • 我试图点击下面xpath提供的按钮。它显示以下错误: cmd中。

  • 我想做的就是选择下拉列表。 下拉列表示例 代码: 我已经尝试了很多不同的Xpaths HTML代码 单击我查看HTML示例1 看看例1和例2中的名字 单击我为超文本标记语言实例2 您会注意到 HTML 代码已更改为 我认为这是我面临的问题的一部分。真是卡住了。我也尝试过使用ChroPath 提前谢谢你! 更新: 评论要求提供超文本标记语言代码的更多细节 更新2(解决方案) 我错在这里。我没有提供足

  • 问题内容: 我的手势有点麻烦。 我正在尝试在同一个按钮上同时使用水龙头和长按,所以我已经使用了 和 但是当我点击时,我的按钮似乎对这两种功能都有反应。可能是什么问题? 问题答案: 很难说什么与您的代码不兼容,仅提供了两行,但是我建议您以这种方式进行: 为按钮创建插座 然后将手势添加到按钮中 然后创建动作来处理水龙头 Swift 3.0版本: Swift 5.x的更新语法:

  • 我正在使用这个库:https://github.com/jamesmontemagno/dibrateplugin 振动函数只获得参数。我该怎么办?

  • 我的代码首先将我登录到PayPal,然后登录到eBay并导航到“支付费用”页面,然后使用PayPal结账。最后一个“继续”按钮我无法单击/提交。我尝试了xpath、id和类。我甚至尝试发送TAB 7x,直到按下“继续”按钮,然后发送Enter,但没有成功。 我已经找到了这个讨论,但我不知道如何让它为我工作。PayPal沙箱签出“继续按钮”-无法定位元素:-C#网络驱动程序

  • 我在下面写这段代码,这是一个简单的用户注册选项,当我按下创建我的帐户按钮时,我得到:任何人都可以找出原因?我自己想不出来。提前谢谢大家 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 12-28 18:38:57.792 3358-3358/gr.aegean.icsd15109.myfitupE/