gpt4 book ai didi

java - IE 驱动程序和 Xpath Selenium with Java 的按钮问题

转载 作者:行者123 更新时间:2023-12-01 18:00:34 25 4
gpt4 key购买 nike

我有以下问题:

我在表单中有一个按钮(网页有一个登录名和密码文本框和一个按钮),该按钮调用js函数,并在登录和密码验证后调用主网页。 html 代码是这样的(此代码位于调用“login”和 method = POST 的表单内部):

<INPUT class="btn btn-mini btn-primary" onclick=submitForm(); type=button value="Sign On">

在 Selenium 中,我尝试使用以下语句,但没有成功:

driver.findElement(By.xpath("//input[@type='button']")).click();
driver.findElement(By.cssSelector("input[type='button'][@value='Sign On']")).click();
driver.findElement(By.xpath("//input[@value='Sign On']")).click();

当我运行脚本时,登录名和密码文本已正确填写,但单击按钮不起作用。

你能帮我解决这个问题吗?

谢谢!

来自智利的贡萨洛

最佳答案

要点击元素,您需要为 element_to_be_clickable() 引发 WebDriverWait,并且可以使用以下任一定位器策略:

  • css选择器:

    new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.cssSelector("input.btn.btn-mini.btn-primary[value='Sign On'][onclick^='submitForm']"))).click();
  • xpath:

    new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@class='btn btn-mini btn-primary' and @value='Sign On'][starts-with(@onclick, 'submitForm')]"))).click();

关于java - IE 驱动程序和 Xpath Selenium with Java 的按钮问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60641225/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com