使用属性文件获取定位器时出现InvalidSelectorError

时间:2016-06-28 14:44:19

标签: selenium xpath selenium-webdriver properties

我正在使用Selenium Webdriver和TestNG。 我已将所有定位器的详细信息保存在单独的属性文件中。 当我尝试在我的Java代码中引用定位器时,我在日志中收到以下错误

  

InvalidSelectorError:无法找到带有xpath的元素   表达" / html / body / div [1] / nav / div / div [2] / ul / li [6] / a / b"因为   以下错误:TypeError:表达式无法转换为   返回指定的类型。

请找到以下代码:

@Test(priority=1)

public void testLoginOnFirstPage() {

      try {
          log.debug("Test#1 -  Login on the Home page ");
          driver.manage().timeouts().implicitlyWait(3,TimeUnit.SECONDS);
          loginButtonHomePage=By.xpath(prop.getProperty("login.button.homePage.xpath"));
          driver.findElement(loginButtonHomePage).click();
          Assert.assertTrue(true,"Login button clicked successsfully");
          log.debug("Test#1----------------------Login on the Home Page -----------------Passed");
      }

      catch(Exception e) {
          Assert.assertFalse(false,"Error while clicking on the Login button on the first page");
          log.error(e);
          log.debug("Test#1----------------------Login on the Home Page ----------------Failed");
         }
}

正确获取属性值。我试过在控制台上打印它的值。 它显示为> By.xpath:" xpathexpression"

当我在不使用属性文件的情况下传递xpath值时,代码运行时没有任何错误。

请帮忙。

0 个答案:

没有答案