Html 硒Xpath组合

Html 硒Xpath组合,html,selenium,xpath,selenium-webdriver,Html,Selenium,Xpath,Selenium Webdriver,看来X路径有严重的问题。我试图连接循环内的X路径,但结果是一条错误消息。 请帮我解决这个问题 WebElement e=driver.findElement(By.xpath("//tr[2]//tr//table/tbody/tr[1]/td/table[contains(@id,'fs')]/tbody")); for (int i=1; i<numRows; i++) { Row row =

看来X路径有严重的问题。我试图连接循环内的X路径,但结果是一条错误消息。 请帮我解决这个问题

WebElement e=driver.findElement(By.xpath("//tr[2]//tr//table/tbody/tr[1]/td/table[contains(@id,'fs')]/tbody")); 

            for (int i=1; i<numRows; i++) 
            {
                    Row row = sheet.getRow(i);
                    if (row != null){
                        for (int j=0; j<numCols; j++){
                            if (row.getCell(j) != null){
                                if(row.getCell(j).getStringCellValue() != null) {

                                    if(j==0 && !details[i][j].equalsIgnoreCase("XXX"))
                                    {
                                    WebElement style=driver.findElement(By.xpath(e+"/tr["+k+"]/td[1]/input"));
                                    style.sendKeys(details[i][j]);
                                    style.sendKeys(Keys.TAB);
                                    ReusableMethods.expliwait(driver);
                                    }
WebElement e=driver.findElement(By.xpath(“//tr[2]//tr//table/tbody/tr[1]/td/table[contains(@id,'fs')]/tbody”);

对于(inti=1;i,如果您想将元素与XPath匹配
//tr[2]//tr//table/tbody/tr[1]/td/table[contains(@id,'fs')]/tbody
+
/tr[“+k+”]/td[1]/input
您可能需要使用以下语法:

WebElement e=driver.findElement(By.xpath("//tr[2]//tr//table/tbody/tr[1]/td/table[contains(@id,'fs')]/tbody"));
WebElement style=e.findElement(By.xpath("./tr["+k+"]/td[1]/input"));

另外,我建议您避免使用这种
XPath
,而是使用表达式Relative
XPath
可以在不涉及
id
的情况下使用。或者如果您想使用动态更改
id
的方法,比如
,您可以尝试使用
//标记[contains(@id,“constant\u part”)]