Chúng tôi sẽ sử dụng trang web Mercury Tours làm ứng dụng web đang được thử nghiệm. Nó là một hệ thống đặt vé máy bay trực tuyến có chứa tất cả các yếu tố chúng tôi cần cho hướng dẫn này. URL của nó là http://demo.guru99.com/test/newtours/ và đây sẽ là URL cơ sở của chúng tôi.
Tạo tập lệnh bằng cách ghi
Bây giờ chúng ta hãy tạo tập lệnh thử nghiệm đầu tiên của mình trong Selenium IDE bằng phương pháp phổ biến nhất - bằng cách ghi lại. Sau đó, chúng tôi sẽ thực thi tập lệnh của mình bằng tính năng phát lại.
Bước 1
- Khởi chạy Firefox và Selenium IDE.
- Nhập giá trị cho URL cơ sở của chúng tôi: http://demo.guru99.com/test/newtours/.
- Bật nút Ghi (nếu nó chưa được bật theo mặc định).
Bước 2
Trong Firefox, điều hướng đến http://demo.guru99.com/test/newtours/. Firefox sẽ đưa bạn đến trang tương tự như trang bên dưới. |
|
Bước 3
|
|
Bước 4
|
|
Bước 5
|
|
Bước 6
Tắt nút ghi để dừng ghi. Tập lệnh của bạn bây giờ sẽ trông giống như được hiển thị bên dưới. |
|
Bước 7
Bây giờ chúng ta đã hoàn thành tập lệnh thử nghiệm của mình, chúng ta sẽ lưu nó trong một trường hợp thử nghiệm. Trong menu Tệp, chọn "Lưu Trường hợp Kiểm tra". Ngoài ra, bạn có thể chỉ cần nhấn Ctrl + S. |
|
Bước 8
|
|
Bước 9.
Lưu ý rằng tệp đã được lưu dưới dạng HTML. |
Bước 10.
Quay lại Selenium IDE và nhấp vào nút Phát lại để thực thi toàn bộ tập lệnh. Selenium IDE có thể sao chép mọi thứ một cách hoàn hảo.
Giới thiệu về Lệnh Selenium - Selenese
- Lệnh Selenese có thể có tối đa hai tham số: đích và giá trị.
- Các thông số không được yêu cầu mọi lúc. Nó phụ thuộc vào số lượng lệnh sẽ cần.
3 loại lệnh
Hành động |
Đây là các lệnh tương tác trực tiếp với các phần tử của trang. Ví dụ: lệnh "click" là một hành động do bạn tương tác trực tiếp với phần tử mà bạn đang nhấp vào. Lệnh "type" cũng là một hành động vì bạn đang đặt các giá trị vào một hộp văn bản và hộp văn bản sẽ hiển thị chúng cho bạn. Có một sự tương tác hai chiều giữa bạn và hộp văn bản. |
Người truy cập |
Chúng là các lệnh cho phép bạn lưu trữ các giá trị vào một biến. Ví dụ: lệnh "storeTitle" là một công cụ truy cập vì nó chỉ "đọc" tiêu đề trang và lưu nó trong một biến. Nó không tương tác với bất kỳ phần tử nào trên trang. |
Khẳng định |
Chúng là các lệnh xác minh xem một điều kiện nhất định có được đáp ứng hay không. 3 loại khẳng định
|
Khẳng định so với Xác minh
Các lệnh chung
Chỉ huy | Số tham số | Sự miêu tả |
---|---|---|
mở | 0 - 2 |
Mở trang bằng URL. |
click / clickAndWait | 1 |
Nhấp vào một phần tử được chỉ định. |
type / typeKeys | 2 |
Nhập một chuỗi ký tự. |
verifyTitle / khẳng địnhTitle | 1 |
So sánh tiêu đề trang thực tế với giá trị mong đợi. |
verifyTextPresent | 1 |
Kiểm tra xem một văn bản nhất định có được tìm thấy trong trang hay không. |
verifyElementPresent | 1 |
Kiểm tra sự hiện diện của một phần tử nhất định. |
verifyTable | 2 |
So sánh nội dung của một bảng với các giá trị mong đợi. |
waitForPageToLoad | 1 |
Tạm dừng thực thi cho đến khi trang được tải hoàn toàn. |
waitForElementPresent | 1 |
Tạm dừng thực thi cho đến khi phần tử được chỉ định xuất hiện. |
Tạo tập lệnh theo cách thủ công với Firebug
Bây giờ, chúng ta sẽ tạo lại cùng một trường hợp thử nghiệm theo cách thủ công, bằng cách nhập các lệnh. Lần này, chúng ta sẽ cần sử dụng Firebug.
Bước 1
|
Bước 2: Nhấp vào dòng trống trên cùng trong Trình chỉnh sửa. |
Nhập "mở" vào hộp văn bản Lệnh và nhấn Enter. |
Bước 3
|
Bước 4
|
Bước 5
|
Bấm vào hộp văn bản Tên người dùng. Lưu ý rằng Firebug tự động hiển thị cho bạn mã HTML cho phần tử đó. |
Bước 6
Lưu ý rằng hộp văn bản Tên người dùng không có ID, nhưng nó có thuộc tính NAME. Do đó, chúng tôi sẽ sử dụng TÊN của nó làm công cụ định vị. Sao chép giá trị NAME và dán nó vào trường Target trong Selenium IDE. Vẫn trong hộp văn bản Target, tiền tố "userName" với "name =", cho biết rằng Selenium IDE nên nhắm mục tiêu một phần tử có thuộc tính NAME là "userName." Nhập "invalidUN" vào hộp văn bản Giá trị của Selenium IDE. Kịch bản thử nghiệm của bạn bây giờ sẽ giống như hình ảnh bên dưới. Chúng tôi đã thực hiện xong với lệnh thứ ba. Lưu ý: Thay vì không hợp lệUN, bạn có thể nhập bất kỳ chuỗi văn bản nào khác. Nhưng Selenium IDE phân biệt chữ hoa chữ thường và bạn nhập các giá trị / thuộc tính giống hệt như trong ứng dụng. |
Bước 7
|
Bước 8
|
Bước 9: Lưu trường hợp thử nghiệm theo cách tương tự như chúng ta đã làm trong phần trước.
Sử dụng nút Tìm
Nút Tìm trong Selenium IDE được sử dụng để xác minh xem những gì chúng tôi đã đặt trong hộp văn bản Mục tiêu có thực sự là phần tử giao diện người dùng chính xác hay không.
Hãy để chúng tôi sử dụng trường hợp kiểm thử Invalid_login mà chúng tôi đã tạo trong các phần trước. Nhấp vào bất kỳ lệnh nào có mục Target, chẳng hạn như lệnh thứ ba.
Bấm vào nút Tìm. Lưu ý rằng hộp văn bản Tên người dùng trong trang Mercury Tours sẽ được tô sáng trong một giây.
Điều này chỉ ra rằng Selenium IDE đã có thể phát hiện và truy cập vào phần tử mong đợi một cách chính xác. Nếu nút Tìm đánh dấu một phần tử khác hoặc không có phần tử nào, thì chắc chắn có điều gì đó không ổn với tập lệnh của bạn.
Thực thi lệnh
Điều này cho phép bạn thực hiện bất kỳ lệnh đơn lẻ nào mà không cần chạy toàn bộ trường hợp thử nghiệm . Chỉ cần nhấp vào dòng bạn muốn thực hiện và sau đó nhấp vào "Hành động> Thực hiện lệnh này" từ thanh menu hoặc chỉ cần nhấn "X" trên bàn phím của bạn.
Bước 1. Đảm bảo rằng trình duyệt của bạn đang ở trên trang chủ Mercury Tours. Nhấp vào lệnh bạn muốn thực hiện. Trong ví dụ này, hãy nhấp vào dòng "type | userName | invalidUN".
Bước 2. Nhấn "X" trên bàn phím của bạn.
Bước 3. Quan sát rằng hộp văn bản cho tên người dùng trở nên phổ biến với văn bản "invalidUN"
Việc thực thi các lệnh theo cách này phụ thuộc nhiều vào trang mà Firefox hiện đang hiển thị . Điều này có nghĩa là nếu bạn thử ví dụ trên với trang chủ Google được hiển thị thay vì Mercury Tours ', thì bước của bạn sẽ không thành công vì không có hộp văn bản có thuộc tính "userName" trong trang chủ của Google.
Điểm xuất phát
Điểm bắt đầu là một chỉ báo cho Selenium IDE biết dòng nào sẽ bắt đầu thực thi . Phím tắt của nó là "S".
Trong ví dụ trên, quá trình phát lại sẽ bắt đầu trên dòng thứ ba (gõ | mật khẩu | không hợp lệPW). Bạn chỉ có thể có một điểm bắt đầu trong một tập lệnh thử nghiệm duy nhất.
Điểm bắt đầu tương tự như Execute Command ở chỗ chúng phụ thuộc vào trang được hiển thị hiện tại. Điểm bắt đầu sẽ không thành công nếu bạn đang ở trên trang sai.
Điểm ngắt
Điểm ngắt là các chỉ báo cho Selenium IDE biết nơi tự động tạm dừng kiểm tra. Phím tắt là "B".
Đánh dấu màu vàng có nghĩa là bước hiện tại đang chờ xử lý. Điều này chứng tỏ rằng Selenium IDE đã tạm dừng thực thi ở bước đó. Bạn có thể có nhiều điểm ngắt trong một trường hợp thử nghiệm.
Bươc
Nó cho phép bạn thực hiện các lệnh tiếp theo lần lượt sau khi tạm dừng trường hợp thử nghiệm. Chúng ta hãy sử dụng kịch bản trong phần trước "Điểm ngắt".
Trước khi nhấp vào "Bước". Trường hợp kiểm tra tạm dừng ở dòng "clickAndWait | đăng nhập". |
|
Sau khi nhấp vào "Bước". Dòng "clickAndWait | login" được chạy và tạm dừng ở lệnh tiếp theo (verifyTitle | Sign-on: Mercury Tours). Lưu ý rằng dòng tiếp theo bị tạm dừng mặc dù không có điểm ngắt ở đó. Đây là mục đích chính của tính năng Bước - nó thực hiện các lệnh tiếp theo lần lượt để bạn có thêm thời gian kiểm tra kết quả sau mỗi bước. |
Những điều quan trọng cần lưu ý khi sử dụng các định dạng khác trong chế độ xem nguồn
Selenium IDE chỉ hoạt động tốt với HTML - các định dạng khác vẫn đang ở chế độ thử nghiệm . Đó là KHÔNG nên để tạo hoặc chỉnh sửa các bài kiểm tra sử dụng các định dạng khác trong Source Xem vì vẫn còn rất nhiều công việc cần thiết để làm cho nó ổn định. Dưới đây là các lỗi đã biết kể từ phiên bản 1.9.1.
- Bạn sẽ không thể thực hiện phát lại hoặc chuyển trở lại Chế độ xem bảng trừ khi bạn hoàn nguyên về HTML.
- Cách duy nhất để thêm các lệnh một cách an toàn vào mã nguồn là ghi lại chúng.
- Khi bạn sửa đổi mã nguồn theo cách thủ công, tất cả mã nguồn sẽ bị mất khi bạn chuyển sang định dạng khác.
- Mặc dù bạn có thể lưu trường hợp thử nghiệm của mình trong khi ở Chế độ xem nguồn, Selenium IDE sẽ không thể mở nó.
Cách được khuyến nghị để chuyển đổi các bài kiểm tra Selenese là sử dụng tùy chọn "Export Test Case As…" trong menu Tệp chứ không phải qua Chế độ xem Nguồn.
Tóm lược
- Các kịch bản kiểm tra có thể được tạo bằng cách ghi lại hoặc nhập các lệnh và thông số theo cách thủ công.
- Khi tạo script theo cách thủ công, Firebug được sử dụng để lấy bộ định vị.
- Nút Tìm được sử dụng để kiểm tra xem lệnh có thể truy cập đúng phần tử hay không.
- Chế độ xem Bảng hiển thị một tập lệnh thử nghiệm ở dạng bảng trong khi Chế độ xem Nguồn hiển thị nó ở định dạng HTML.
- Việc thay đổi Chế độ xem nguồn sang định dạng không phải HTML vẫn còn đang thử nghiệm.
- Không sử dụng Chế độ xem nguồn trong việc tạo thử nghiệm ở các định dạng khác. Sử dụng các tính năng Xuất thay thế.
- Các thông số không được yêu cầu mọi lúc. Nó phụ thuộc vào lệnh.
- Có ba loại lệnh:
- Các hành động - tương tác trực tiếp với các phần tử trang
- Accessors - "đọc" một thuộc tính phần tử và lưu trữ nó trong một biến
- Khẳng định - so sánh một giá trị thực tế với một giá trị mong đợi
- Khẳng định có ba loại:
- Khẳng định - khi thất bại, các bước tiếp theo không còn được thực hiện nữa
- Xác minh - khi thất bại, các bước tiếp theo vẫn được thực hiện.
- WaitFor - vượt qua nếu điều kiện được chỉ định trở thành đúng trong khoảng thời gian chờ; nếu không, nó sẽ thất bại
- Các lệnh phổ biến nhất là:
- mở
- click / clickAndWait
- type / typeKeys
- verifyTitle / khẳng địnhTitle
- verifyTextPresent
- verifyElementPresent
- verifyTable
- waitForPageToLoad
- waitForElementPresent