提问人:rusty 提问时间:8/29/2023 最后编辑:Peter Mortensenrusty 更新时间:8/31/2023 访问量:35
无法找到元素异常 - Java Selenium
Unable to locate element exception - Java Selenium
问:
由于超出我的原因,我收到了无法找到元素异常。
这是网站: https://bo.competentfinman.com:1467/capexweb/capexweb/
这是我的代码:
package artifactidshilpipackage;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.edge.EdgeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.Select;
import io.github.bonigarcia.wdm.WebDriverManager;
public class shilpi {
public static void main(String[] args) throws Throwable {
WebDriver driver;
WebDriverManager.firefoxdriver().setup();
driver = new FirefoxDriver();
driver.get("https://bo.competentfinman.com:1467/capexweb/capexweb/");
Thread.sleep(3000);
driver.switchTo().frame("main");
driver.findElement(By.id("dfuserid")).sendKeys("***");
Thread.sleep(5000);
driver.findElement(By.name("dfpassword")).sendKeys("***");
Thread.sleep(5000);
driver.findElement(By.name("B1")).click();
Thread.sleep(5000);
driver.findElement(By.xpath("/html/body/div[1]/a")).click();
Thread.sleep(5000);
driver.findElement(By.xpath("/html/body/table[2]/tbody/tr/td/input")).click();
Thread.sleep(5000);
driver.findElement(By.name("topsegment")).click();
Thread.sleep(5000);
Select dropdown = new Select(driver.findElement(By.name("topsegment")));
dropdown.selectByValue("F&O");
driver.findElement(By.name("nodeIcon3")).click();
Thread.sleep(5000);
driver.findElement(By.id("itemTextLink5")).click();
Thread.sleep(5000);
driver.findElement(By.name("B1")).click();
// String a
// driver.findElement(By.xpath("/html/body/table[2]/tbody/tr[108]/td[2]/b")).getText();
// int b = Integer.parseInt(a);
}
}
当我尝试在某人的建议下使用嵌套框架时,我遇到了同样的问题。嵌套框架不起作用。但我相信我是正确的框架......
答:
0赞
Shawn
8/29/2023
#1
以下行不正确:
driver.findElement(By.id("dfuserid")).sendKeys("***");
请注意下面的 HTML。它是我们需要使用的属性,而不是 .@name
@id
所以代码应该是:
driver.findElement(By.name("dfuserid")).sendKeys("***");
评论
0赞
rusty
8/29/2023
哦。我的上帝。 这不可能。我到处找。已经2天了。我的头上还剩下 3 个毛囊!?我什至尝试了xpath??这怎么可能??我太傻了。我该怎么办?我会删除这个问题吗?谢谢你的回答,请也来用棒球棒砸我。
0赞
Shawn
8/29/2023
这很正常,别担心。我们都这样做。编程:)的一部分很高兴它有帮助。当有人回答我的问题时,我该怎么办?
0赞
Peter Mortensen
8/31/2023
请查看 为什么在提问时不上传代码/错误的图片? (例如,“图像只能用于说明无法以任何其他方式阐明的问题,例如提供用户界面的屏幕截图。 并做正确的事情(它也包括答案)。提前致谢。
评论