Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 3

Copy XPath (relative xpath – tương đối) : dùng trong Automation Test -> có tính tái sử dụng (do

thứ
tự các thẻ có thể thay đổi )

Copy full XPath: học cho biết

Dùng // để đi đến bất kì element nào

Dùng / để đi đến element liền kề sau nó (đi từng bậc)

//*[text()=’search’] : là nó đi kiếm hết tất cả các thẻ mà có text là search

Frame/I-frame

Dù bắt đc element bằng xpath nhưng k thể send key vào text field?

Why? Kiểm tra bằng cách đi lên check thẻ cha của nó , tìm thẻ cha tên FRAME ,(khi element con nằm
trong the FRAME thì mình sẽ k thể tương tác trực tiếp đến thẻ con) tìm SRC và so sánh đường link
của SRC và cái LINK URL giống hay khác nhau

Frame và iframe: là một trang hmtl riêng mà được nhúng vào một trang khác

Nhúng cùng domain: dùng frame

Nhúng khác domain: dung iframe

Trước khi làm với frame thì phải chuyển driver qua frame , có 3 cách:

C1: by index

C2: by name or ID

C3: web element

Window/tab

Chuyển qua tab mới thì dùng

 Driver.switchTo().window ( kiểu String với biến là name or handle(id của tab ))

Kiểu dữ liệu Set không cho mình lấy theo kiểu index -> nên convert thì Set qua Array (lúc này lấy theo
index đc) nhưng khi convert qua to Array lại convert qua kiểu Object-> từ Array convert qua String

Khi có nhiều hơn 2 tab window, thì dùng vòng lặp for each sẽ không lấy được cái window mình muốn
chọn.

JavaScript Executor

Upload file

Khi gặp test case upload file , Selenium không thao tác được trên desktop. Do vậy khi mình upload
file là mình up đường link dẫn đến file đó trong folder. (Nên để link hình ảnh trong folder project
đang làm luôn)
Dùng thẻ input để upload hình -> dùng làm senkey và dẫn đường link vào

NOTE: khi ngkhac down source code này về thi sẽ k chạy được

Do cái link đến hình ảnh đó không có

 Tạo một folder chứa hình ảnh trong src luôn


 Dùng Projectpath để : nó lấy được cái đường link luôn không cần hardcode.

Khi khai báo biến project path cho 1 hình ảnh , dùng dấu “ \\ ” chỉ chạy được trên máy win thoi. ->
nên dùng Java.separator

Verify đường link có chứa cái text của hình ảnh


String FullFilePath = image_01_path+ "\n"+image_02_path;
Khi để “” thì máy k hiểu, phải thêm kí tự xuống dòng

Mảng 2 chiều

B[số dòng][số cột]

Duyệt các phần tử mảng thì cần sử dụng vòng lặp 2 lần. Lần một là duyệt số dòng, lần 2 là số cột

FindElements

Trả về kiểu List <WebElement> có kiểu dữ liệu là Web Element

Trong một List có nhiều phần tử nên phải Thêm index vào rồi mới thao tác tiếp

Verify một element không có trên UI thì không sử dụng hàm findElement được vì nếu không tìm ra
thì nó sẽ hiển thị no such element -> sử dụng FindElements để trả về dạng List thì nó sẽ là luôn là số
0 nếu không có kết quả

ImplicitWait

sẽ ảnh hưởng đến 2 lọai findElement và findElements

Dùng implicit wait chỉ cần config đúng một lần

Chạy test case theo bảng chữ cái và số tự tự

ExplicitWait

Cái này thì không ảnh hưởng đến 2 loại kia. Explicit wait có bao bọc luôn cả implicit

Nếu implicti = 0, implicit = 10 -> tc fail tu 0s


explicitWait.until(ExpectedConditions.visibilityOf(driver.find
Element(By.id("email"))));
Exception:

Có 3 loại

BasePage

Tránh việc lặp lại code -> đem các hàm (function) được lặp lại sử dụng nhiều lần bỏ vào chung 1 class

You might also like