Nội dung bài viết
Xin chào các bạn – đây loạt bài viết hướng dẫn về Build Automation Framework. Loạt bài viết này được hướng dẫn từ khóa học Build Automation Framework in Java with Page Object Pattern – bạn nào quan tâm và muốn làm bài bản thì nên tham gia để học và thực hành trên dự án từ A-Z nhé.
Bài viết này hướng dẫn tạo Java project và xây dựng cấu trúc của 1 test automation framework – các bạn lưu ý rằng 1 framework không bó buộc phải theo style nào nhất định vì nó còn tùy thuộc vào tool/ thư viện đang sử dụng và chức năng mà dự án cần/ khả năng và tư duy của người xây dựng lên framework đó
Tools
- Trong phạm vi các bài đầu mình sẽ hướng dẫn từ cơ bản nên sẽ tạo dự án dạng Java project – sẽ convert qa Maven project trong các bài viết sau theo đúng lộ trình
- Môi trường ổn định các bạn đọc thêm về bài viết này (Sự tương thích giữa các version)
- Java JDK (version 1.8)
- Eclipse for Java Developer
- Chrome browser mới nhất
- Chrome driver mới nhất
- Firefox 47.0.2 hoặc mới nhất
- Selenium 2.53.1 hoặc mới nhất
Framework structure
- Khởi tạo 1 Java project và các tầng tương ứng – tùy vào phạm vi của framework và cách người triển khai đặt tên nhưng về cơ bản có thể tạo ra các tầng (source folder) như sau:
- testcases: chứa các testscript (chia nhỏ ra để quản lí từ function/ module/ class)
- testdata: chứa bộ data test (nếu có) khi tách riêng ra các external file để quản lí (.xlsx/ .json/ .java/..)
- actions: chứa các module
- pageObjects: chứa các page class
- commons: chứa các common class như AbstractPage/ AbstractTest/ Global_Constant
- reportConfig: chứa các class để config report html (ReportNG/ Extent Report)
- …
- interfaces: chứa các UI (User Interface) của các page application – cụ thể là định nghĩa các locator cho element trong 1 page
- resources: chứa các external config như log.xml/ testng.xml/ .properties/…
- các thư mục khác:
- libraries
- browserDriver
- uploadFiles
- downloadFiles
- screenshot
- ..
- Sau khi tạo xong cấu trúc hiển thị như thế này là finish
Add lib/ driver
- Tải thư viện Selenium và các browser driver về add vào Build Path (check đúng version đang có ở local)
- http://selenium-release.storage.googleapis.com/2.53/selenium-server-standalone-2.53.1.jar
- Copy paste vào thư mục libraries – click chuột phải vào file thư viện chọn Build Path > Add to Build Path
- https://chromedriver.storage.googleapis.com/index.html?path=78.0.3904.70/
- Copy paste file chromedriver.exe vào thư mục browserDriver (lưu ý ko add file này vào Build Path)
- http://selenium-release.storage.googleapis.com/2.53/selenium-server-standalone-2.53.1.jar
- Sau khi add vào Build Path kiểm tra có selenium trong đó là thành công
- Bài sau mình sẽ hướng dẫn để tạo test sample đầu tiên viết theo level basic (step-by-step) – mục đích để compare ưu/ nhược điểm vs các cách viết khác