Selenium webdriver (java): Masalah Seret Dan Lepas

Aplikasi : Adobe CQ5 - Instance Penulis

Tugas : Tarik gambar dari bendungan konten dan letakkan di dialog gambar CQ5

Bahasa yang digunakan : Java + Selenium WebDriver 2.40

Saya mencoba melakukan operasi drag and drop untuk mencapai tugas di atas. Masalahnya di sini adalah sumber dan tujuan berada di dua panel berbeda (Gambar sumber di konten Dam, dan tujuan adalah kotak dialog html)

Masalah yang dihadapi:

  1. Mengklik dan menahan gambar - Berfungsi dengan baik
  2. Pindah ke tujuan - Berfungsi dengan baik
  3. Melepaskan gambar ke tujuan - GAGAL

masukkan deskripsi gambar di sini‹>

Elemen tujuan ditampilkan dan tersedia (ketika diperiksa dari debugger) Saya sudah mencoba beralih ke elemen Aktif/konten default Tujuannya tidak pada frame/iframe apa pun

Ini berfungsi beberapa hari yang lalu (versi Selenium 2.36 Versi lama). Tapi sekarang gagal dengan versi terbaru (dan versi lama juga)

Apakah saya melewatkan sesuatu di sini.? Saya tidak dapat memahami mengapa webdriver tidak melepaskan gambar dari kendali ke tujuan.

Terima kasih sebelumnya.


person Praveen    schedule 02.06.2014    source sumber
comment
Apakah Anda mendapat pengecualian? Apakah itu gagal secara diam-diam? Tolong tunjukkan bagaimana Anda mencoba berinteraksi dengan elemen, meskipun sederhana.   -  person toniedzwiedz    schedule 03.06.2014
comment
Hai Tom, Tidak ada kesalahan, tidak ada kegagalan. Itu hanya menyimpan gambar dan tidak pernah melepaskannya ke tujuan.   -  person Praveen    schedule 03.06.2014
comment
Saya dapat menunjukkan kodenya dalam beberapa jam.. Saya memilikinya di mesin kerja saya. Saya dapat menambahkan cuplikan lebih awal besok. Maaf dan terima kasih atas ketertarikan Anda.   -  person Praveen    schedule 03.06.2014
comment
Hai Tom, Silakan lihat tangkapan layar kode terlampir dan Aplikasi yang menunjukkan sumber dan tujuan. Baris yang ditambahkan breakpoint adalah kode untuk melepaskan gambar, yang tidak berfungsi seperti yang diharapkan.   -  person Praveen    schedule 04.06.2014


Jawaban (1)


Saya juga punya masalah ini sebelumnya. Saya menggunakan versi 2.42.2 Yang saya lakukan adalah beralih ke Iframe sebelum merilisnya. Ini cuplikannya

WebElement sourceElement = mySourceElement;
Actions builder = new Actions(driver);
Action dragAndDrop = builder.clickAndHold(sourceElement).build();
dragAndDrop.perform();
driver.switchTo().frame(iFrame);
WebElement targetElement = myTargetElement;
Thread.sleep(1000);
dragAndDrop = builder.moveToElement(targetElement).release().build();
   dragAndDrop.perform();
person andyssundaypink    schedule 23.07.2014
comment
Terima kasih atas masukannya sobat, izinkan saya mencobanya. (sebenarnya, ini adalah pendekatan yang sama meskipun saya sudah mencobanya, tetapi tidak berhasil. Izinkan saya mencoba lagi. Terima kasih sekali lagi. - person Praveen; 24.07.2014
comment
Hai, di browser manakah Anda mencoba kode ini?. Saya mencobanya di FF tetapi kemudian saya mencoba di Chrome tetapi tidak berhasil. Ada bug di driver chrome itu sendiri. - person andyssundaypink; 12.09.2014
comment
Ya, Anda benar.. Ada beberapa bug yang merayapi driver Chrome. Mengamati beberapa masalah seperti itu HANYA dengan chrome. - person Praveen; 14.09.2014