Tutorials tiếng việt về Selenium IDE và WebDriver (Java)
Forum rules
Chuyên đề này chỉ thảo luận về Automation Testing Tool.
Để có kết quả nhanh, bạn nên search trước khi viết bài mới.
Chuyên đề này chỉ thảo luận về Automation Testing Tool.
Để có kết quả nhanh, bạn nên search trước khi viết bài mới.
-
- Fresher Tester
- Posts: 27
- Joined: Sun 03 Feb, 2013 8:18 pm
- Location: Đà nẵng
- Contact:
Tutorials tiếng việt về Selenium IDE và WebDriver (Java)
Qua 1 thời gian làm việc và tích lũy kinh nghiệm thì mình có viết được 1 số bài viết dạng tutorial, cũng khá là basic nhưng sẽ giúp đỡ cho các bạn mới có cách nhìn tổng quan và dễ tiếp cận với automation testing trên web app.
Selenium IDE:
[Selenium IDE 01] – Giới thiệu/ cài đặt Selenium IDE
[Selenium IDE 02] – Một số commands thông dụng
[Selenium IDE 03] – Tạo dữ liệu ngẫu nhiên
[Selenium IDE 04] – Chạy kịch bản trên trình duyệt Chrome/ IE
[Selenium IDE 05] – Vòng lặp với Flow Control
[Selenium IDE 06] – Export test result
[Selenium IDE 07] – Các câu lệnh Wait
[Selenium IDE 08] – Đọc dữ liệu từ file XML
[Selenium IDE 09] – Chụp ảnh step fail
[Selenium IDE 10] – Chạy test trên Cloud với TestingBot
[Selenium IDE 11] – Xử lí permission khi cài đặt Selenium IDE
Link: https://automationfc.com/category/selenium-ide
Selenium WebDriver - Java:
[Java – Webdriver 01] – Cài đặt/ cấu hình Java và Eclipse
[Java – Webdriver 02] – Thiết lập cố định chiều rộng và chiều cao của trình duyệt
[Java – Webdriver 03] – Thêm extensions vào các trình duyệt mặc định
[Java – Webdriver 04] – Capture multi-image
[Java – Webdriver 05] – Download và kiểm tra/ xóa file đã tải về
[Java – Webdriver 06] – Run automation trên Windows 10 – Microsoft Edge
[Java – Webdriver 07] – Drag and drop element (Kéo/ thả phần tử trên trang Web)
[Java – Webdriver 08] – Kiểm tra phần tử hiển thị trên page
[Java – Webdriver 09] – Kiểm tra phần tử bị disable/ enable
[Java – Webdriver 10] – Kiểm tra phần tử đã được chọn (selected)
[Java – Webdriver 11] – Xử lí Dropdowns/ Lists
[Java – Webdriver 12] – Các vấn đề khi chạy kịch bản Selenium với trình duyệt IE
[Java – Webdriver 13] – Run test với trình duyệt Chrome Headless
Link: https://automationfc.com/category/selen ... -webdriver
Cucumber - Java:
[Java – Cucumber 01] – Cài đặt môi trường Cucumber và Eclipse
Link: https://automationfc.com/category/bdd/java-cucumber/
Dự án thực hành demo:
[Selenium – Actual Project 01] – Guru99 Banking Website
[Selenium – Actual Project 02] – eCommerce Website
Link: https://automationfc.com/category/project/
Testcase để scripting:
Bank Test Cases - BankGuru99 - https://goo.gl/XLFtSb
eCommerce Test Cases - eCommerce - https://goo.gl/JM41A6
Group Skype (Hỗ trợ miễn phí về technical):
https://join.skype.com/KcPsD07DfIqI
https://automationfc.com/chatting/
Selenium IDE:
[Selenium IDE 01] – Giới thiệu/ cài đặt Selenium IDE
[Selenium IDE 02] – Một số commands thông dụng
[Selenium IDE 03] – Tạo dữ liệu ngẫu nhiên
[Selenium IDE 04] – Chạy kịch bản trên trình duyệt Chrome/ IE
[Selenium IDE 05] – Vòng lặp với Flow Control
[Selenium IDE 06] – Export test result
[Selenium IDE 07] – Các câu lệnh Wait
[Selenium IDE 08] – Đọc dữ liệu từ file XML
[Selenium IDE 09] – Chụp ảnh step fail
[Selenium IDE 10] – Chạy test trên Cloud với TestingBot
[Selenium IDE 11] – Xử lí permission khi cài đặt Selenium IDE
Link: https://automationfc.com/category/selenium-ide
Selenium WebDriver - Java:
[Java – Webdriver 01] – Cài đặt/ cấu hình Java và Eclipse
[Java – Webdriver 02] – Thiết lập cố định chiều rộng và chiều cao của trình duyệt
[Java – Webdriver 03] – Thêm extensions vào các trình duyệt mặc định
[Java – Webdriver 04] – Capture multi-image
[Java – Webdriver 05] – Download và kiểm tra/ xóa file đã tải về
[Java – Webdriver 06] – Run automation trên Windows 10 – Microsoft Edge
[Java – Webdriver 07] – Drag and drop element (Kéo/ thả phần tử trên trang Web)
[Java – Webdriver 08] – Kiểm tra phần tử hiển thị trên page
[Java – Webdriver 09] – Kiểm tra phần tử bị disable/ enable
[Java – Webdriver 10] – Kiểm tra phần tử đã được chọn (selected)
[Java – Webdriver 11] – Xử lí Dropdowns/ Lists
[Java – Webdriver 12] – Các vấn đề khi chạy kịch bản Selenium với trình duyệt IE
[Java – Webdriver 13] – Run test với trình duyệt Chrome Headless
Link: https://automationfc.com/category/selen ... -webdriver
Cucumber - Java:
[Java – Cucumber 01] – Cài đặt môi trường Cucumber và Eclipse
Link: https://automationfc.com/category/bdd/java-cucumber/
Dự án thực hành demo:
[Selenium – Actual Project 01] – Guru99 Banking Website
[Selenium – Actual Project 02] – eCommerce Website
Link: https://automationfc.com/category/project/
Testcase để scripting:
Bank Test Cases - BankGuru99 - https://goo.gl/XLFtSb
eCommerce Test Cases - eCommerce - https://goo.gl/JM41A6
Group Skype (Hỗ trợ miễn phí về technical):
https://join.skype.com/KcPsD07DfIqI
https://automationfc.com/chatting/
Last edited by daominhdam on Fri 01 Dec, 2017 6:59 am, edited 9 times in total.
-
- Admin
- Posts: 4900
- Joined: Tue 10 Aug, 2010 10:11 am
- Location: HCM
- Contact:
-
- Fresher Tester
- Posts: 27
- Joined: Sun 03 Feb, 2013 8:18 pm
- Location: Đà nẵng
- Contact:
-
- Fresher Tester
- Posts: 27
- Joined: Sun 03 Feb, 2013 8:18 pm
- Location: Đà nẵng
- Contact:
Automation Test thì nên bắt đầu từ đâu?
Bắt đầu đi làm thì mình manual khoảng được 6 tháng và tự học về automation qua 1 số video, thường xuyên thảo luận trên group skype và các blog/ site có liên quan về automation. Mình chuyển qa 1 team startup làm chuyên về automation và có cơ hội được học hỏi phát triển nhiều hơn. Dù ở bất kì môi trường nào nếu bạn ko tự học/ tự nghiên cứu và tinh thần ham học hỏi thì chắc chắn ko thể tiến bộ như mong muốn được.
Về lộ trình để làm việc với automation testing:
- Selenium IDE (chỉ cần record và playback để hiểu cách nó hoạt động/ command/ cơ chế chạy như thế nào/ ít nhất ko thấy nản khi chưa đụng vào coding)
- Tiếp tục học qa các API/ đục hết các thư viện/ command trong Selenium WebDriver, làm trên bất kì 1 dự án nào.
- Trong quá trình này nghiên cứu thêm về Java or C# basic và html, nếu thêm javascript basic thôi cũng rất tốt.
- Nghiên cứu tiếp qua cách xây dựng/ kiến trúc/ cấu trúc của framework (Page Object Model pattern)
- Apply framework này vào 1 số dự án để kiểm nghiệm
- Nghiên cứu thêm về công nghệ/ tools như: Maven, Jenkins, TFS, DevOps,...
Đi được đến bước này thì cũng khá là ok để pv tại các công ty tuyển dụng automation rồi.
Good luck!
Về lộ trình để làm việc với automation testing:
- Selenium IDE (chỉ cần record và playback để hiểu cách nó hoạt động/ command/ cơ chế chạy như thế nào/ ít nhất ko thấy nản khi chưa đụng vào coding)
- Tiếp tục học qa các API/ đục hết các thư viện/ command trong Selenium WebDriver, làm trên bất kì 1 dự án nào.
- Trong quá trình này nghiên cứu thêm về Java or C# basic và html, nếu thêm javascript basic thôi cũng rất tốt.
- Nghiên cứu tiếp qua cách xây dựng/ kiến trúc/ cấu trúc của framework (Page Object Model pattern)
- Apply framework này vào 1 số dự án để kiểm nghiệm
- Nghiên cứu thêm về công nghệ/ tools như: Maven, Jenkins, TFS, DevOps,...
Đi được đến bước này thì cũng khá là ok để pv tại các công ty tuyển dụng automation rồi.
Good luck!
-
- Fresher Tester
- Posts: 27
- Joined: Sun 03 Feb, 2013 8:18 pm
- Location: Đà nẵng
- Contact:
Tái sử dụng Script trong automated test?
Tái sử dụng đồng nghĩa với việc viết hàm nhưng có thể được sử dụng ở nhiều chỗ khác nhau, cho nhiều chức năng khác nhau.
Ví dụ đơn giản nhất: Với việc viết 1 hàm với 2 field username/ password để login thì hàm này có thể chạy được gần chục testcases:
- user invalid/ valid
- user incorrect/ correct
- password < 6 characters
- password incorrect/ correct
...
Ví dụ đơn giản nhất: Với việc viết 1 hàm với 2 field username/ password để login thì hàm này có thể chạy được gần chục testcases:
- user invalid/ valid
- user incorrect/ correct
- password < 6 characters
- password incorrect/ correct
...
-
- Fresher Tester
- Posts: 27
- Joined: Sun 03 Feb, 2013 8:18 pm
- Location: Đà nẵng
- Contact:
Các bước làm Automation test với Selenium?
Các bước thông thường (Coding/ ko phải record và playback nhé):
- Manual test qua các chức năng cần làm (ít nhất 1 vài lần) để đảm bảo chức năng ổn định
- Viết testcase manual cho các chức năng để ko bị miss các điểm cần verify (Bước này là phần option, tùy dự án gấp hay ko nên có hoặc ko)
- Estimate thời gian cho từng chức năng/ page/ screen (bao nhiêu testcase/ ngày)
- Implement testcase (Code)
- Run/ Debug testcase trên các browser mong muốn (IE/ Firefox/ Chrome/...)
- Lấy report (xml/ html/...)
- Tích hợp các module đã code với nhau và run regression test để tìm bug theo yêu cầu của dự án (theo tuần/ theo sprint/ theo mỗi lần release/ deploy/...)
- Bảo trì testscript khi có sự thay đổi (chức năng và/ hoặc UI)
Câu hỏi 2: Vả lại cho mình hỏi, nhiều người cho rằng không nên dùng Selenium IDE mà phải code bằng tay.
-> IDE chỉ phù hợp với các dự án ngắn hạn/ vừa và nhỏ hoặc chức năng đơn giản/ ít step nhé. Nó khó khi tái sử dụng code và bảo trì, chạy trên nhiều trình duyệt/ nhiều máy cùng thời điểm vì thực tế nó chỉ là 1 addon thôi mà.
-> Những nhược điểm trên sẽ được khắc phục khi bạn sử dụng những công cụ có nhiều tính năng hơn.
Ex: Selenium WebDriver + ngôn ngữ lập trình (Java/ C#/..) để build 1 framework automation hoàn chỉnh.
Good luck!
- Manual test qua các chức năng cần làm (ít nhất 1 vài lần) để đảm bảo chức năng ổn định
- Viết testcase manual cho các chức năng để ko bị miss các điểm cần verify (Bước này là phần option, tùy dự án gấp hay ko nên có hoặc ko)
- Estimate thời gian cho từng chức năng/ page/ screen (bao nhiêu testcase/ ngày)
- Implement testcase (Code)
- Run/ Debug testcase trên các browser mong muốn (IE/ Firefox/ Chrome/...)
- Lấy report (xml/ html/...)
- Tích hợp các module đã code với nhau và run regression test để tìm bug theo yêu cầu của dự án (theo tuần/ theo sprint/ theo mỗi lần release/ deploy/...)
- Bảo trì testscript khi có sự thay đổi (chức năng và/ hoặc UI)
Câu hỏi 2: Vả lại cho mình hỏi, nhiều người cho rằng không nên dùng Selenium IDE mà phải code bằng tay.
-> IDE chỉ phù hợp với các dự án ngắn hạn/ vừa và nhỏ hoặc chức năng đơn giản/ ít step nhé. Nó khó khi tái sử dụng code và bảo trì, chạy trên nhiều trình duyệt/ nhiều máy cùng thời điểm vì thực tế nó chỉ là 1 addon thôi mà.
-> Những nhược điểm trên sẽ được khắc phục khi bạn sử dụng những công cụ có nhiều tính năng hơn.
Ex: Selenium WebDriver + ngôn ngữ lập trình (Java/ C#/..) để build 1 framework automation hoàn chỉnh.
Good luck!
-
- Fresher Tester
- Posts: 27
- Joined: Sun 03 Feb, 2013 8:18 pm
- Location: Đà nẵng
- Contact:
Firefox version tương thích với Selenium?
To use older versions of firefox use the following selenium versions:
Firefox 47: only works with selenium version 2.53.1
Firefox 46: 2.51.0 2.52.0 2.53.0
Firefox 44 - 45: 2.48.2, 2.49.0, 2.51.0, 2.52.0, 2.53.0
Firefox 39 - 43: 2.47.1, 2.48.2, 2.49.0, 2.51.0, 2.52.0, 2.53.0
Firefox 38: 2.46.0
Firefox 32 - 37: 2.45.0
Firefox 47: only works with selenium version 2.53.1
Firefox 46: 2.51.0 2.52.0 2.53.0
Firefox 44 - 45: 2.48.2, 2.49.0, 2.51.0, 2.52.0, 2.53.0
Firefox 39 - 43: 2.47.1, 2.48.2, 2.49.0, 2.51.0, 2.52.0, 2.53.0
Firefox 38: 2.46.0
Firefox 32 - 37: 2.45.0
-
- Fresher Tester
- Posts: 10
- Joined: Mon 22 Dec, 2014 2:08 pm
- Contact:
Re: Tutorials tiếng việt về Selenium IDE và WebDriver (Java)
Dạ cho em hỏi là mình có thể dùng Selenium IDE để test trường hợp đặt hàng có chapcha không ạ
-
- Fresher Tester
- Posts: 27
- Joined: Sun 03 Feb, 2013 8:18 pm
- Location: Đà nẵng
- Contact:
Re: Tutorials tiếng việt về Selenium IDE và WebDriver (Java)
Trên thực tế họ dùng captcha để chống việc automation (đăng kí tài khoản, spam mail, đặt hàng,..) nên mình ko nên automation cho chức năng này nhé bạn. Nếu trong trường hợp dự án bắt buộc thì bạn có thể nhờ đội developer bỏ chức năng hoặc hỗ trợ thư viện, bộ dữ liệu để pass qua vụ captcha này.kn202 wrote:Dạ cho em hỏi là mình có thể dùng Selenium IDE để test trường hợp đặt hàng có chapcha không ạ
Nói về captcha thì nó cũng có 1 số loại: cơ bản như text (có giá trị trong attribute của element), hình ảnh (phải dùng thư viện hoặc third party để quét từ ảnh -> text), captcha trừu tượng hơn (tìm ảnh gần nghĩa, đồng nghĩa),..
-
- Admin
- Posts: 4900
- Joined: Tue 10 Aug, 2010 10:11 am
- Location: HCM
- Contact:
Re: Tutorials tiếng việt về Selenium IDE và WebDriver (Java)
Nếu automation được captcha thì còn gì là captcha nữa. Trên thực tế nếu muốn test automation cho chức năng nào có captcha thì nên tắt nó khi thực hiện test.kn202 wrote:Dạ cho em hỏi là mình có thể dùng Selenium IDE để test trường hợp đặt hàng có chapcha không ạ