Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.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 为什么我不能使用classname属性在Flipkart中定位元素?_Java_Selenium Webdriver_Testng - Fatal编程技术网

Java 为什么我不能使用classname属性在Flipkart中定位元素?

Java 为什么我不能使用classname属性在Flipkart中定位元素?,java,selenium-webdriver,testng,Java,Selenium Webdriver,Testng,我使用“class name”属性在Flip kart中定位元素,如下所示: WebElement element = driver.findElement(By.className("_1QZ6fC _3Lgyp8")); 我得到的错误是: <span class="_1QZ6fC _3Lgyp8">Electronics<svg width="4.7" height="8" viewBox=&

我使用“class name”属性在Flip kart中定位元素,如下所示:

WebElement element = driver.findElement(By.className("_1QZ6fC _3Lgyp8"));
我得到的错误是:

<span class="_1QZ6fC _3Lgyp8">Electronics<svg width="4.7" height="8" viewBox="0 0 16 27" xmlns="http://www.w3.org/2000/svg" class="_3ynUUz"><path d="M16 23.207L6.11 13.161 16 3.093 12.955 0 0 13.161l12.955 13.161z" fill="#fff" class="_3Der3h"></path></svg></span>
org.openqa.selenium.NoSuchElementException:无法定位元素:。\u 1QZ6fC\\u 3Lgyp8

元素的HTML代码如下:

<span class="_1QZ6fC _3Lgyp8">Electronics<svg width="4.7" height="8" viewBox="0 0 16 27" xmlns="http://www.w3.org/2000/svg" class="_3ynUUz"><path d="M16 23.207L6.11 13.161 16 3.093 12.955 0 0 13.161l12.955 13.161z" fill="#fff" class="_3Der3h"></path></svg></span>
电子学

目标webelement和网站-URL中标题的“Electronics”类别运行上述行会产生以下错误: org.openqa.selenium.InvalidSelectorException:不允许使用复合类名

关于这一点,您可以从前面的查询中找到更多详细信息

此外,在指定的页面中使用classname选项将导致选择多个元素,因为我们可以看到至少有7个项目具有相同的类名

与此相反,您可以使用xpath定位元素,如下所示:

findElement(By.xpath(//span[contains(,'Electronics')])