Selenium WebDriver - Bài 6 -Keyboard Mouse Events , Uploading Files - Webdriver

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ẽ tìm hiểu cách xử lý chuột ,  bàn phím trong WebDriver  và cách xử lý file upload

Kiểm thử phần mềm tự động



Xử lý bàn phím và chuột  được thực hiện bằng cách sử dụn Advanced User Interactions API . Nó chứa các Action và Action class  cần thiết để  thực hiện các sự kiện này. Sau đây là các sự kiện bàn phím và chuột thường được sử dụng nhất được cung cấp bởi Actions class



Method
Ý nghĩa
  
clickAndHold()

Nhấp giữ chuột  tại vị trí chuột hiện tại.
contextClick()

Nhấp chuột tại vị trí hiện tại
doubleClick()

Nhấp đôi chuột
dragAndDrop(source, target)
Thực hiện nhấn và giữ ở vị trí của các thành phần nguồn, di chuyển đến vị trí của phần tử mục tiêu, sau đó nhả chuột.
tham số:
Source : Vị trí element
Target : Vị trí move chuột và thả chuột
dragAndDropBy(source, x-offset, y-offset)
Thực hiện nhấn và giữ ở vị trí của các phần tử nguồn, di chuyển và nhả chuột
tham số:
source : vị trí element
xOffset- : Vị trí ngang
yOffset-  : Vị trí dọc
keyDown(modifier_key)
Nhấn giữ phím  trong modifier_key
Modifier_key : Phím bất kỳ trên bàn phím
((Keys.ALT, Keys.SHIFT, or Keys.CONTROL)

keyUp(modifier _key)
Nhấn phím
modifier_key -  phím nhấn bất kỳ  (Keys.ALT, Keys.SHIFT, or Keys.CONTROL)
moveByOffset(x-offset, y-offset)

Move chuột từ vị trí x đến vị trí y
moveToElement(toElement)

Move chuột tới một phần tử
release()

Thả chuột tới 1 vị trí hiện tại
sendKeys(onElement, charsequence)



Một ví dụ về trường hợp Hover chuột nhé .


Mở trang web Demo : http://newtours.demoaut.com/ 
Bình thường  , khi không  Hover chuột, phần tử đó có giá trị màu cam #FFC455  , khi Hover , nó trở thành trong suốt và màu nền  sẽ hiển thị ( Màu xanh )


Kiểm thử phần mềm


Step 1 :
Import the Actions and Action classes.

import org.openqa.selenium.interactions.Action;
import org.openqa.selenium.interactions.Actions;


Step 2 : Khởi tạo  new Actions object.

 Actions builder = new Actions(driver);
 Step 3:
Khởi tạo hành đồng cho new Actions object ở Step 2

 Action mouseOverHome = builder.moveToElement(link_Home).build();


Trong trường hợp này, chúng ta sẽ sử dụng phương thức  moveToElement (), Nó sẽ thực hiện hành động rê chuột qua đối tượng  "Home" . Dùng  build ()  để hoàn thành hành động rê chuột
Step 4:
Sử dụng phương thức perform()  khi thực thi lệnh Action ở Step 3

mouseOverHome.perform();  


Dưới đây là đoạn Script  WebDriver để kiểm tra màu nền của ô đầu tiên ở menu  trước và sau khi chuột  rê chuột

package HocKiemThuPhanMem;

import org.openqa.selenium.*;
import org.openqa.selenium.firefox.FirefoxDriver;

import org.openqa.selenium.interactions.Action;
import org.openqa.selenium.interactions.Actions;

public class HocKiemThuPhanMemPractice{

public static void main(String[] args) {

String baseUrl = "http://newtours.demoaut.com/";
        WebDriver driver = new FirefoxDriver();
      driver.get(baseUrl);      

// Lấy xpath của đối tượng cần kiểm tra
     WebElement ObjectToHover =driver.findElement(By.xpath("/html/body/div/table/tbody/tr/td[1]/table/tbody/tr/td/table/tbody/tr/td/table/tbody/tr[1]"));
    // Lấy màu nền của đối tượng cần kiểm tra
        String bgColorGet = ObjectToHover.getCssValue("background-color");
     
// In màu nền trước khi Hover chuột
       System.out.println("Before hover: "+bgColorGet);

// Thực hiện việc rê chuột
     Actions builder = new Actions(driver);
     Action mouseOverHome = builder
             .moveToElement(ObjectToHover)
             .build();
     mouseOverHome.perform();

// Lấy màu nền khi rê chuột
     bgColorGet = ObjectToHover.getCssValue("background-color");
   
// In màu khi rê chuột
     System.out.println("After hover: "+bgColorGet);
    driver.quit();
}
}


Thực thi đoạn Script sau đó dùng bản màu CSS để kiểm tra kết quả trả về đúng không nhé !

Kiểm thử phần mềm tự động

Qua bài sau, Bài thứ 7- Chúng ta sẽ thực hành Drag and Drop element nhé 

----------------------------
Học kiểm thử phần mềm



Xem nhiều nhất

Zui Zui

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