java
  • selenium-webdriver
  • 2016-01-22 49 views 0 likes 
    0

    我有一个全局变量字符串,我需要点击一个web元素使用该全局变量作为xpath的一部分。selenium - 从字符串存储的xpath

    因此,例如全局变量是a = bob154;

    我知道下面的以下工作

    driver.findElement(By.xpath("//a[text()='bob154]")).click(); 
    

    ,但我想这样做下面,只使用全局变量来代替,但不起作用。

    driver.findElement(By.xpath("//a[text()=a]")).click(); 
    

    如果您对我能做什么有什么建议将不胜感激!

    回答

    0

    当你把'a'放在双引号里面“作为这个例子”时,代码会认为它是字符串,而不是变量。

    的代码识别您的 'A' 作为变量,你需要separe它:

    driver.findElement(By.xpath("//a[text()='" + a + "']")).click(); 
    

    “//一个[文本()='”将是第一个字符串

    一个是你的变量

    “']”是最后一个字符串

    “//一个[文本()= '” + A + “​​']”是动态的xpath

    0

    我想你可以简单地使用另外的字符串:

    "//a[text()="+ a +"]" 
    
    0

    这不正确,因为你的全局变量是双引号。试试下面的代码:

    driver.findElement(By.xpath("//a[text()='"+a+"']")).click(); 
    
    0

    尝试下面

    driver.findElement(By.xpath("//a[text()='"+a+"']")).click();
    相关问题