Java 拖放后未附加到DOM的元素
我使用的是SeleniumWebDriver,我试图在其中拖放表的一列。但是,当我拖放该列时,就会出现一个错误“元素不再附加到DOM”。 下面是我用来拖放元素的代码Java 拖放后未附加到DOM的元素,java,selenium,selenium-webdriver,Java,Selenium,Selenium Webdriver,我使用的是SeleniumWebDriver,我试图在其中拖放表的一列。但是,当我拖放该列时,就会出现一个错误“元素不再附加到DOM”。 下面是我用来拖放元素的代码 WebElement draggable = objectIdentifierType( objectIdentificationKeyword, objectValue); WebElement droppable = GetBr
WebElement draggable = objectIdentifierType(
objectIdentificationKeyword, objectValue);
WebElement droppable = GetBrowserDriver.driver.findElement(By.xpath(objectData));
/*WebElement droppable = objectIdentifierType(
objectIdentificationKeyword, objectValue);*/
if (draggable != null) {
System.out.println(draggable.getText()+"Draged element");
System.out.println(droppable.getText()+"Droped element");
//System.out.println(droppable.getText());
new Actions(GetBrowserDriver.driver).dragAndDrop(
draggable,droppable).build()
.perform();
HTMLReport.bw.write("<script type='text/javascript'>addDetailRow('"
+ GenericFunctions.testCaseName + "','"
+ HTMLReport.testcaseTABLESNO() + "','\""
+ "Drag Value: "
+ draggable.getText()
+ "','Drop Value \""
+ droppable.getText()
+ "\" ','"
+ "','Passed' )</script>");
// new
// Actions(GetBrowserDriver.driver).dragAndDrop(draggable,
// droppable);
String actualResult = "The Slider value is changed to the expected value.";
CreateExcel updatePassed = new CreateExcel();
updatePassed.updatePassedTestSteps(actualResult,
expectedResult, objectData);
WebElement draggable=objectIdentifierType(
objectIdentificationKeyword、objectValue);
WebElement droppable=GetBrowserDriver.driver.findElement(By.xpath(objectData));
/*WebElement droppable=objectIdentifierType(
objectIdentificationKeyword、objectValue)*/
如果(可拖动!=null){
System.out.println(draggable.getText()+“Draged元素”);
System.out.println(droppable.getText()+“Droped元素”);
//System.out.println(droppable.getText());
新操作(GetBrowserDriver.driver).dragAndDrop(
可拖动、可拖放)。build()
.perform();
HTMLReport.bw.write(“addDetailRow(”)
+GenericFunctions.testCaseName+“,”
+HTMLReport.testcaseTABLESNO()+“,”\“”
+“拖动值:”
+draggable.getText()
+“,”删除值“
+droppable.getText()
+ "\" ','"
+“,”通过“)”;
//新的
//操作(GetBrowserDriver.driver).dragAndDrop(可拖动,
//可滴落;
String actualResult=“滑块值已更改为预期值。”;
CreateExcel UpdatePass=新建CreateExcel();
updatePassed.updatePassedTestSteps(实际结果,
expectedResult,objectData);
显然,您通过此操作更改了DOM。您需要分配可拖动的.getText()
和可拖放的.getText()
字符串
我对java不太熟悉,但我认为这应该是可行的:
if (draggable != null) {
String draggableText = draggable.getText();
String droppableText = droppable.getText();
//continue your code from here using new variables
PS对不起我的英语不好@Piyus很高兴它帮了我的忙