即使已经单击元素,超时例外也是如此

  • 本文关键字:超时 单击 元素 opentest
  • 更新时间 :
  • 英文 :


我正在尝试单击一个按钮登录,但是即使在单击按钮后,我也会获得超时例外。

我已经验证了代码,并验证了我正在使用正确的定位器。

描述:上限演示 导航到GitHub网站,使用 搜索功能并转到仓库的主页演员: - 演员:网络 细分市场: - 细分:1 行动: - 描述:导航到GitHub主页 动作:org.getopentest.selenium.navigateto args: URL:http://192.168.200.98:8780/cafportal/#/login

      - description: Enter Login id
        action: org.getopentest.selenium.SendKeys
        args:
          locator: {xpath: "//*[@id='login']/app-root/app-caf-login/div/div/div[2]/form/div[1]/input"} 
          text: ksood
          sendEnter: true
      - description: Enter password
        action: org.getopentest.selenium.SendKeys
        args:
          locator: {xpath: "//*[@id='login']/app-root/app-caf-login/div/div/div[2]/form/div[2]/input"}
          text: Acs@2018
          sendEnter: true
      - description: Pause for 60 second
        action: org.getopentest.selenium.ActionsPause
        args:
          durationMs: 60000
      - description: Display a greeting dialog box in the browser
        action: org.getopentest.selenium.ExecuteScript
        args:
        script: 
          var message = "Hello World!";
          alert(message);
      - description: Click on sign in 
        action: org.getopentest.selenium.Click
        args:
          locator: {xpath: "//*[@id='login']/app-root/app-caf-login/div/div/div[2]/form/div[3]/div/div/button"}

只希望最后一个测试柜通过

您不需要任何sendEnter: true操作的CC_1参数。当您通过sendEnter: true时,将键发送到文本框元素后,操作将"按" Enter键。因此,基本上,在您显示的测试中,第一个操作将输入用户名,然后按Enter,因此试图在没有密码的情况下登录,这当然会失败。

另一个问题是您错误地使用了ActionsPause关键字(在此处提供更多信息(。如果您想在测试中引入延迟,可以使用$ delay((API,但是由于内置同步,您很少需要使用最opent的操作,这意味着所有在UI上执行某些工作的测试操作元素知道如何在完成工作之前等待该元素可用。

相关内容

  • 没有找到相关文章

最新更新