簡體   English   中英

我在使用 selenium java 在 html5 中拖放時遇到問題

[英]I am facing issue in drag and drop in html5 with selenium java

我是 java 和 selenium 的新手。 我在 HTML5 中的dragAndDrop中遇到問題。 你能幫我么?

我使用的代碼是:

public static void draganddrop(WebDriver driver ,WebElement Source, WebElement Destination) 
  {

  Actions action = new Actions(driver);
  action.dragAndDrop(Source, Destination).build().perform();

  }

 <li data-ng-repeat="item in questionType" id="divDrag0" class="ng-scope"> <!-- ngIf: !isSurveyStarted || (isSurveyStarted && !isSurveyLock) --> <a data-ng-if="!isSurveyStarted || (isSurveyStarted &amp;&amp; !isSurveyLock)" href="javascript:void(0)" draggable="true" id="1" class="ng-binding ng-scope">Single Choice </a> <!-- end ngIf: !isSurveyStarted || (isSurveyStarted && !isSurveyLock) --> <!-- ngIf: isSurveyStarted && isSurveyLock --> </li>

通過Actions界面嘗試我的drag and drop版本

new Actions(driver)
    .moveToElement(source)
    .pause(Duration.ofSeconds(1))
    .clickAndHold(source)
    .pause(Duration.ofSeconds(1))
    .moveByOffset(1, 0)
    .moveToElement(destination)
    .moveByOffset(1, 0)
    .pause(Duration.ofSeconds(1))
    .release().perform();

在我的應用程序中,當我clickAndHold ,目標元素會發生變化。 這就是我添加停頓的原因。

這是 Selenium 和 Html5 尚未解決的老問題; 但是你可以在這里找到一個解決方案(歸功於 rcorreia): https ://gist.github.com/rcorreia/2362544#file-drag_and_drop_helper-js

只需執行該 js 文件js.ExecuteScript(jsfile + "$('#[sourceElement]').simulateDragDrop({dropTarget: '#[targetElement]'})");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM