[Bài 8] Hoàn chỉnh test script login

Theo như bài trước mình mới có 1 testcase login thành công và bây giờ mình phải implement thêm 1 testcase login không thành công nữa. Cách dễ dàng nhất là copy method login thành công rồi sửa thông tin truyền vào. OK Lets do it.

Ta có code mới như sau:

Như bài trước đã nói, viết thế này có 1 số chỗ có vấn đề cần phải xử lý:

  • Mỗi lần run sẽ tạo ra một cái firefox, nó không chịu đóng lại khi kết thúc script.
  • Không có phần kiểm tra tự động
  • Hard code
  • Duplicate code

1. Đóng browser đơn giản bằng dòng code vào chỗ cuối cùng của 1 method.

Ok cool. Problem 1 –> fixed

2. Để kiểm tra tự động, ta sẽ sử dụng những method Assert do TestNG cung cấp (mình sẽ viết 1 bài về cách sử dụng Assert sau). Và chính chúng ta phải suy nghĩ là lấy cái gì làm căn cứ để xác minh và kiểm tra xem test case này pass hay fail.

Ví dụ: sau login thành công, trang dashboard sẽ mở ra và URL không còn là /wp-login.php nữa mà là /wp-admin/. Ta có thể lấy cái này để làm điều kiện kiểm tra. Ta sẽ thêm 1 dòng code kiểm tra vào.

Code test case 1 như sau:

Tương tự, nếu login không thành công thì URL sẽ vẫn là /wp-login.php

Code test case 2 như sau:

Problem 2 –> fixed

3. Ta thấy có khá nhiều chỗ ta hard code như URL login, URL dashboard, Id của Element. Cách xử lý hard code là cho nó thành Variable –> sử dụng chung.

Ví dụ:

Problem 3 –> fixed

Code hoàn chỉnh sẽ là:

 

Có vẻ như vẫn dễ dàng nhỉ, không khó lắm. Ơ mà khoan đã còn 1 Problem nữa mà, đấy mới là phần khoai nhất, duplicate code. @@ Cách xử lý thế nào nhỉ?

Đúng rồi đấy, ta phải gộp những cái gì chung nhau vào 1 chỗ, sau đó lúc nào cần thì ta chỉ cần gọi nó là được. 😀 Nhưng bài này dài rồi, đợi bài sau nhé. ^^

[Bài 9] Hoàn chỉnh test script login – Xử lý duplicate code

3 thoughts on “[Bài 8] Hoàn chỉnh test script login

  1. Pingback: [Bài 7] Webdriver script đơn giản đầu tiên | GiangTester Blog

  2. Em chào anh ạ!
    Các bài viết của anh thật sự rất hay và hữu ích, em hy vọng anh sẽ ra bài mới thường xuyên để bọn em học hỏi ạ.
    Anh ơi, anh cho em hỏi, em đã install TestNG vào Eclipse -> Restart như các bước anh đã chỉ rồi nhưng em check Window -> Preferences nhưng nó vẫn k có TestNG là tại làm sao hả anh?
    Em cảm ơn anh nhìu nhìu ạ! 😀

    • Hi em,
      Cái này anh cũng ko biết, em thử add lại thêm 1 lần nữa rồi restart Eclipse xem. Nếu muốn biết có lỗi gì thì chắc anh phải xem tận mắt mới biết được.

Leave a Reply

Your email address will not be published. Required fields are marked *