Topic Học Kiểm thử phần mềm tự động sẽ tiếp tục giới thiệu các lệnh về trong Selenium Webdriver.  Trong baì này, chúng ta sẽ cùng thực hành về Kéo và thả chuột từ vị trí nguồn đến vị trí đích ( Drag and Drop) 

Như các bạn đã biết, một số ứng dụng web có chức năng kéo thả một item từ nơi này đến nơi khác . Làm sao để tự động hóa chức năng này ? 

Selenium Webdriver có cung cấp lớp xử lý " Action"  nhằm xử lý các tương tác về sự kiện chuột và bàn phím như chức năng Hover , Kéo thả  đã nói ở bài trước 

Cách thức hoạt động : 
- Trước tiên nó sẽ xác định vị trí của đối tượng cần di chuyển thông qua lệnh Find Element, Sau đó lại xác định vị trí cần chuyển đến . 
- Gọi lớp Action  của Selenium Webdriver
- Sau đó gọi phương thức Build () để thực hiện hành động

Ví dụ nhé : Hãy viết 1 script thực hiện chức năng KÉO THẢ một Folder "Học kiểm thử phần mềm tự động " Sang Folder "Tài Liệu Selenium WebDriver ".

Tài liệu Selenium Webdriver

Ta lần lượt thực hiện các bước sau :

1) Đăng nhập vào Google Driver  gồm :
 - Email
- Password
- Không check remember
- Click nút đăng nhập

2) Xác định vị trí của Folder " Học Kiểm thử phần mềm tự đông "

3) Xác định vị trí của Folder " Tài liệu WebDriver"

4) Thực hiện Move " Học Kiểm thử phần mềm tự động " Sang " Tài Liệu Selenium WebDriver"

5) Kiểm tra kết quả thực hiện

Đoạn Script như sau

package Tài Liệu Selenium Webdriver Tiếng Việt ;

import java.util.concurrent.TimeUnit;

import org.openqa.selenium.By;

import org.openqa.selenium.WebDriver;

import org.openqa.selenium.WebElement;

import org.openqa.selenium.firefox.FirefoxDriver;

import org.openqa.selenium.interactions.Action;

import org.openqa.selenium.interactions.Actions;

public class  Học kiểm thử phần mềm tự động{


public static void main(String[] args) throws InterruptedException {

WebDriver driver = new FirefoxDriver();

// Get URL của Google driver
String URL = "https://drive.google.com/drive/my-drive";
driver.get(URL);
 // It is always advisable to Maximize the window before performing DragNDrop action - Phóng to của sổ

driver.manage().window().maximize();

//Đăng nhập gmail
// Find element Email ID sau đó điền email đã đăng ký 
driver.findElement(By.id("Email")).sendKeys("thanhsuong.py3");

//Find element password sau đó nhập password

driver.findElement(By.id("Passwd")).sendKeys("6677028@123");
WebElement checkRemember = driver.findElement(By.id("PersistentCookie"));

// Bỏ chọn Remember cookies nếu default đã chọn - Bên Firefox nhớ dai lắm, tốt nhất là không nên chọn , hjhj

if (checkRemember.isSelected() == true) {
                   checkRemember.click();
                 }
// Click đăng nhập button 
driver.findElement(By.id("signIn")).click();

// Đợi load trang
driver.manage().timeouts().implicitlyWait(10000, TimeUnit.MILLISECONDS);

WebElement From = driver.findElement(By.xpath
("/html/body/div[4]/div[2]/div[2]/div[2]/div/div/div[3]/div/div/div/div/div[1]/div/div/div[2]/div/div/div[1]/div/div/div/div[1]/div/div/div[2]/div/div[1]/div[2]/div[3]/div"));

WebElement To = driver.findElement(By.xpath
("/html/body/div[4]/div[2]/div[2]/div[2]/div/div/div[3]/div/div/div/div/div[1]/div/div/div[2]/div/div/div[1]/div/div/div/div[1]/div/div/div[2]/div/div[2]/div[2]/div[3]/div"));

Actions builder = new Actions(driver);

Action dragAndDrop = builder.clickAndHold(From)

.moveToElement(To)

.release(To)

.build();

dragAndDrop.perform();

}

}

Xem video : 

----------------------------
Học kiểm thử phần mềm tự động trong topic " Học Selenium Webdriver" cơ bản


Xem nhiều nhất

Zui Zui

Nếu bạn không đủ mạnh -Đừng cố đi ngược đám đông