+1

Chương 1: Bắt đầu với Selenium IDE (tiếp)

Lưu trữ thông tin trang web khi test

Đôi khi bạn cần lưu trữ các phần tử trên trang web để sử dụng chúng về sau. Chẳng hạn test của bạn cần chọn 1 ngày trên trang và sử dụng nó sau này để không phải hard-cord giá trị vào test.

Một khi phần tử đã được lưu trữ, bạn sẽ sử dụng lại nó bằng cách yêu cầu từ JavaScript dictionary mà Selenium theo dõi. Để sử dụng biến, sử dụng một trong 2 format như sau: ${variableName} hoặc storedVars['variableName']. Bản thân mình thì thích storedVars hơn vì nó trông giống với format trong Selenium

Để xem điều này hoạt động thế nào, ta cùng làm theo ví dụ dưới đây nhé:

  1. Mở Selenium IDE và tắt bỏ button Record

  2. Di chuyển đến http://book.theautomatedtester.co.uk/chapter1.

  3. Right-click vào text Assert that this text is on the page -> click vào lệnh storeText trên danh sách context

  4. Xuất hiện dialog như bên dưới. Nhập tên biến bạn muốn sử dụng. Ở đây tôi sử dụng biến của mình là textOnThePage

image 1.png

  1. Click vào dòng bên dưới lệnh storeText ở Selenium IDE

  2. Nhập type vào textbox Command

  3. Nhập storeinput vào box Target

  4. Nhập ${textOnThePage} vào box Value

  5. Chạy test. Nó sẽ trông như hình bên dưới:

image 2.png

Debugging tests

Ta đã thành công trong việc tạo nhiều test và thấy có thể làm việc như thế nào với ứng dụng AJAX nhưng thật không may là việc tạo test mà chạy hoàn hảo ở ngay lần đầu là rất khó. Đôi khi với 1 người kiểm thử tự động như bạn cũng cần debug test để xem đang bị sai ở đâu. Để làm việc với phần này, bạn cần mở trước 1 test của Selenium IDE.

Time for action – debugging tests

Có 2 bước khá hữu ích khi test của bạn không chạy và bạn muốn thực hiện 1 lệnh riêng

  1. Highlight lệnh

  2. Nhấn phím X để thực thi lệnh trong Selenium IDE

Điều gì vừa xảy ra?

Khi đang chạy test, bạn có thể nhấn button Pause để dừng việc test lại. Một khi test bị dừng, button Step không còn bị disable nữa và bạn có thể nhấn để bước qua est như khi bạn đang bước qua ứng dụng vậy.

Nếu có issue gì với những phần tử trên trang, bạn có thể nhập vị trí của chúng và sau đó click vào button Find. Khi đó phần tử bạn muốn tìm sẽ được bao màu vàng và nháy trong 1 vài giây. Nó sẽ trông như thế này:

image 3.png

Lệnh echo cũng là 1 cách hay để viết gì đó từ test của bạn đến log. Cái này giống với Console.log trong JavaScript. Ví dụ, echo | ${variableName}.

Cũng cần nhớ rằng nếu bạn đang cố gắng debug test script mà bạn đã tạo với Selenium IDE, bạn có thể cài đặt breakpoints(điểm dừng) trong test. Rất đơn giản, bạn right-click vào dòng đó và chọn breakpoint từ danh sách. Nó sẽ trong như thế này.

image 4.png

Bạn cũng có thể dùng phím tắt B để thao tác nhanh hơn.

Test Suites

Chúng ta đang quản lý việc tạo nhiều test sử dụng Selenium IDE và chạy chúng thành công. Điều tiếp theo là cần xem làm thế nào để tạo test suite, mở test suite và sau đó là chạy số lượng lớn test mà mình đã tạo

Time for action - Tạo Test Suite

Nếu bạn đang mở Selenium IDE từ trước, hãy click vào File:

  1. Click New Test Case

  2. Bạn sẽ thấy Selenium IDE mở 1 vùng mới bên tay trái của IDE như hình bên dưới:

image 5.png

Bạn có thể tạo nhiều testcase nếu bạn muốn và khi click vào nút Play entire test suite , nó sẽ chạy tất cả các test trong test suite. Nó sẽ log tất cả những test pass và failure bên dưới của box Test Case.

Để save, click vào File -> Save Test Suite và save file Test Suite vào chỗ mà bạn muốn. Ghi nhớ lại 1 điều rằng việc lưu test suite không đồng nghĩa với việc lưu test case. Cần chắc chắn rằng bạn lưu testcase mỗi khi bạn thay đổi nó chứ không phải chỉ test suite.

Để thay đổi tên của testcase thành cái có nhiều ý nghĩa hơn, bạn có thể làm bằng cách right-click vào test, chọn mục Properties:

image 6.png

Bây giờ thì bạn có thể thêm những cái tên có ý nghĩa cho test của bạn và chúng sẽ xuất hiện ở Selenium IDE.

Điều gì vừa xảy ra?

Chúng ta đang quản lý việc tạo test suite đầu tiên. Ta cũng có thể nhóm các test với nhau để sử dụng sau này. Nếu test của bạn đã được lưu lại, bạn có thể chỉnh sửa properties của testsuit để đặt cái tên dễ đọc hơn.

Pop quiz – Test Suites

  1. Làm thế nào để chạy tất cả test trong cùng 1 test suite?

Nguồn dịch:

Sách Selenium 2 Testing Tools- Beginner's Guide [eBook] - David Burns


All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí