Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将输出添加到xpath_Java_Selenium_Xpath_Selenium Webdriver_Appium - Fatal编程技术网

Java 如何将输出添加到xpath

Java 如何将输出添加到xpath,java,selenium,xpath,selenium-webdriver,appium,Java,Selenium,Xpath,Selenium Webdriver,Appium,我有一个数组列表,我从中随机选取一个数组。 我可以打印随机输出。如何将输出作为xpath值传递 String[] Category = {"abc", "abc", "abc", "abc", "abc", "abc", "abc"}; Random random = new Random(); int index = random.nextInt(Category.length); System.out.println(Category[index]); dr

我有一个数组列表,我从中随机选取一个数组。 我可以打印随机输出。如何将输出作为xpath值传递

String[] Category = {"abc", "abc", "abc", "abc", "abc", "abc", "abc"};

    Random random = new Random();
    int index = random.nextInt(Category.length);
    System.out.println(Category[index]);
    driver.findElement(By.xpath("//*[@name='\"${Category[index]}\"']")).click();

如果使用CSS选择器,它会更短:

Random random = new Random();
int index = random.nextInt(Category.length);
System.out.println(Category[index]);
driver.findElement(By.cssSelector("[name='" + Category[index] + "']")).click();
试试这个

String xpath= "//*[@name='" + Category[index] + "']";   
driver.findElement(By.xpath(xpath)).click();

试试这个<代码>字符串xpath=“//*[@name=“+Category[index]+“]”;findElement(By.xpath(xpath)).click()谢谢你。但它不起作用。它显示无法定位元素。在对字符串xpath=“/*[@name='”+类别[索引]+“]”进行此更改后,它工作了一段时间;