【问题标题】:Selenium Webdriver, Javascript link, Unable to locale ElementSelenium Webdriver,Javascript 链接,无法找到元素
【发布时间】:2014-06-04 03:20:29
【问题描述】:

您好,我遇到了这个问题,下面是我使用 Selenium IDE 生成的代码,基本上我正在尝试访问下面特定网站的职业门户,对于 Jobposting QA 专家,我正在尝试自动完成使用 Selenium 的应用程序。

1) 尽管在适当的类下添加了代码并导入了所有必要的包,但我无法复制在 webdriver 中工作的代码。 2) 在将其作为 TestNG 测试运行时,我无法显示无法找到元素。 3) 如果我将其指定为识别 By.link 文本或 By.xpath,驱动程序也不会检测到指向 QA 专家的链接。 4)请指导我在哪里犯错。 5) 我是 Selenium 的初学者

  public class Application {
  private WebDriver driver;
  private String baseUrl;
  private boolean acceptNextAlert = true;
  private StringBuffer verificationErrors = new StringBuffer();

  @Before
  public void setUp() throws Exception {
    driver = new FirefoxDriver();
    baseUrl = "http://www.saymedia.com/";
    driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
  }

  @Test
  public void testApplication() throws Exception {
    driver.get(baseUrl + "/jobs");
    driver.findElement(By.linkText("QA Specialist")).click();
    driver.findElement(By.linkText("Apply Now")).click();
    driver.findElement(By.linkText("Send Application")).click();
  }

【问题讨论】:

    标签: java javascript selenium xpath webdriver


    【解决方案1】:

    您的元素位于iframe 中。 Selenium 只与当前帧中的元素交互。在您切换到 frame 之前,无法与子 frame 中的任何元素进行交互。您可以使用switchTo().frame()进行切换:

    driver.get(baseUrl + "/jobs");
    driver.switchTo().frame("jobviteframe");
    driver.findElement(By.linkText("QA Specialist")).click();
    driver.findElement(By.linkText("Apply Now")).click();
    driver.findElement(By.linkText("Send Application")).click();
    

    frame() 的参数是

    • 从 0 开始的数字
    • frame 的 ID
    • webelementframe 的引用

    iframe 中完成后,使用以下命令退出回到文档顶部:

    driver.switchTo().defaultContent();
    

    【讨论】:

    • 您好 Richard 感谢您的帮助,我成功纠正了上述情况,但是在特定网站 www.mate1.com 上还有另一种情况; 1)单击登录链接时,会在同一页面上打开一个表单框,在分析该特定页面中的帧数时,我发现它为 7,尽管分别切换到每个帧并通过 xpath 搜索电子邮件字段或身份证; selenium 无法识别它们并向我抛出 Unable to find the element 错误,你能帮帮我吗?
    • @user3705385 我认为最好在一个新问题中解决?
    • 肯定会发布新的
    猜你喜欢
    • 2013-12-21
    • 2023-04-01
    • 2014-05-29
    • 1970-01-01
    • 2014-07-13
    • 2015-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多