2017-07-12 15 views
-1

以下のコードを試しましたが、動作していないようです。Node JsとSelenium webdriverを使用して、その要素位置から別の要素位置に要素をドラッグアンドドロップする方法

driver.findElement(By.xpath(xpath)).then(function (element1) {    
    driver.findElement(By.xpath(xpath)).then(function (element2) {             
     .then(() => driver.actions().dragAndDrop(element1,element2).perform()) 
    }) 
}) 
+0

最も内側の '.then'とは何ですか?あなたはコードを正しく入れましたか? –

+0

私はnodejsに新しいです、私はそれがその形式で行ったと思った – Faheem

+0

また、より良い解決策のための関連HTMLを与えてください:) – demouser123

答えて

0

これはあまりにも複雑なコードです。あなたは、単にこの方法でこれを達成するためにdragAndDrop()メソッドを使用することができます -

browser.actions().dragAndDrop(elem, target).perform(); 
elemは、ソース要素である

targetは、ターゲット要素です。

編集1:OPはウェブページがAngularウェブページであると述べました。私は、このシナリオをJavaバインディングと、分度器を使って自動化する永続的な問題を経験しました。

dragAndDropの問題について議論されたディスカッションフォーラムがいくつかあります。そのうちの1つはthis、もう1つはthisです。

最初の1つは閉じていても解決したかどうかまだ分かりませんが後者は郵便で言及されたコードで運が良かったが、私の実装は何もしなかった。だから私はそれが動作するかわからない。

また、repoを試してみることもできます。ここでは、解決策の1つを試して、カスタムJSファイルを使用して角度アプリケーションのHTML5でドラッグアンドドロップを実現しています。

+0

私は上記の答えを試みたが、動作していないようです。 – Faheem

+0

あなたが得たエラーは何ですか?さらに関連するHTMLを追加してください。 – demouser123

+0

'' HTMLは、TR1からTR1へTR2およびTR2の要素に要素を交換するように、私は別の(行)に一列()の要素を移動する必要があるウェブ・テーブルです。 – Faheem

関連する問題