GIỚI THIỆU APPLITOOLS - Applitools là một công ty phát triển công nghệ kiểm thử tự động và giám sát giao diện người dùng UI cho ứng dụng web và di động.. Công cụ chính của Applitools là
TỔNG QUAN KIỂM THỬ PHẦN MỀM
Kiểm thử là gì?
-Kiểm thử phần mềm là phương pháp kiểm tra xem sản phẩm phần mềm đó trên thực tế có phù hợp với các yêu cầu đã đặt ra hay không và đảm bảo rằng không có lỗi hay khiếm khuyết Nó bao gồm việc kiểm tra, phân tích, quan sát và đánh giá các khía cạnh khác nhau của sản phẩm
Lợi ích của kiểm thử phần mềm là gì?
• Hiệu quả về chi phí: đây là một trong những lợi ích quan trọng của kiểm thử phần mềm Thực tế cho thấy rằng các lỗi thiết kế khó có thể được loại trừ hoàn toàn đối với bất kỳ hệ thống nào Đó không phải là nỗi bất cần của Deverloper mà đôi khi do sự phức tạp của hệ thống Nếu các vấn đề về thiết kế không được phát triển, thì việc tìm ra và sửa các lỗi/ khiếm khuyết sẽ trở nên khó khăn và tốn kém hơn Kiểm thử bất kỳ dự án IT nào cũng sẽ giúp công ty tiết kiệm, việc xác định lỗi trong giai đoạn đầu sẽ giúp quá trình sửa chữa tốn ít chi phí hơn
• Bảo mật: đây là điểm nhạy cảm và dễ bị tấn công nhất của kiểm thử phần mềm Kiểm tự giúp loại bỏ các rủi ro và vấn đề trong sản phẩm Cùng với nó, tất cả khách hàng đều đang tìm kiếm những sản phẩm đáng tin cậy
• Chất lượng sản phẩm: đây là yêu cầu kết yếu của bất kỳ sản phẩm phần mềm nào Kiểm thử phần mềm giống như việc cũng cố danh tiếng công ty bằng cách cung cấp các sản phẩm chất lượng cho khách hàng
• Sự hài lòng của khách hàng: trong bất kỳ hoạt động kinh doanh sản phẩm nào, mục tiêu cuối cùng đều là mang đến cho khách hàng trải nghiệm tốt nhất Sự hài hòa của khách hàng rất quan trọng trong quá trình hợp tác lâu dài
Kiểm thử phải tuân theo các mục đích:
• Tìm kiếm lỗi/Finding defects
• Đảm bảo được một mức độ chất lượng/Gaining confidence about the level of quality
• Không có thông tin để đưa ra quyết định/Providing information for decision- making
• Ngăn ngừa lỗi/ Preventing defects
Nguyên tắc kiểm thử ( 7 testing principles)
1 Kiểm cha sự hiện diện của lỗi/ Testing show presence of defect
2 Kiểm tra toàn bộ là không thể/ Exhautive testing is impossible
3 Thực hiện kiểm thử sớm/ Early testing
4 Phân loại lỗi/ Defect clustering
5 Phương pháp thuốc trừ sâu/Pesticide paradox
6 Kiểm thử phụ thuộc vào bối cảnh/ Testing is context dependent
7 Mắt của lỗi/ Absence of error fallacy.
Tại sao kiểm thử phần mềm là cần thiết?
Vai trò của kiểm thử trong phát triển phần mềm, bảo trì và vận hành:
• Kiểm thử nghiêm ngặt hệ thống và tài liệu có thể giúp giảm thiểu những vấn đề ruỉ do xảy ra trong quá trình vận hành và góp phần nâng cao chất lượng của hệ thống phần mềm, nếu như các lỗi được tìm thấy và sửa chữa trước khi hệ thống được vận hành thực tế
• Kiểm thử phần mềm có được yêu cầu để đạt được tính hợp pháp và đảm bảo hợp đồng, hoặc những tiêu chuẩn trong ngành công nghiệp đặc biệt Kiểm thử và chật lượng:
• Kiểm thử mang lại sự tự tin về chất lượng của phần mềm nếu nó tìm thấy một vài hoặc không tìm thấy lỗi Kiểm thử đúng sẽ giảm thiểu được tổng thể mức độ rủi ro của hệ thống Khi quá trình kiểm thử tìm thấy lỗi, chất lượng của hệ thống phần mềm được nâng cao sau khi những nỗi đó được sửa chữa
Kiểm thử bao nhiêu là đủ:
• Việc quyết định kiểm thử bao nhiêu là đủ phụ thuộc vào mức độ của rủi ro, bao gồm kĩ thuật, độ an toàn, rủi ro trong kinh doanh và hạn mức của dự án như là thời gian và ngân sách
• Kiểm thử nên cung cấp đủ thông tin để các bên liên quan có thể quyết định về việc bàn giao phần mềm hoặc hệ thống đã có kiểm thử, cho các bước phát triển tiếp theo hay bàn giao cho khách hàng.
Mục tiêu của kiểm thử phần mềm
- Xác định phần mềm phù hợp với yêu cầu đặc tả
- Xác định phần mềm phù hợp với nhu cầu người dùng
- Đủ tự tin để cung cấp một sản phẩm chất lượng
- Phát hiện các lỗi trong quá trình phát triển phần mềm
1.3.2 Các quan điểm về kiểm thử
- Phân biệt giữa Testing và debugging
8 Được thực hiện bởi kiểm thử viên Được thực hiện bởi lập trình viên
Tìm được càng nhiều lỗi càng tốt Loại bỏ những lỗi tìm được
- Đối với mọi người, kiểm thử là công việc vô cùng đơn giản và dễ dàng nhưng thực tế lại không phải như vậy Sau đây là một số quan điểm về kiểm thử phần mềm Điểm của người ngoài Thực tế
Kiểm thử là công việc dễ dàng
Kiểm thử là công việc thách thức, đòi hỏi kỹ năng cao khi thực hiện ít nhất một số trường hợp kiểm tra nội dung
Ai cũng có thể trở thành kiểm thử viên
Kiểm thử là công việc đòi hỏi tính cẩn thận, tỉ mỉ trong từng nội dung, khả năng nghiên cứu và tìm kiếm dữ liệu cao
Sau khi kiểm thử thì sản phẩm đạt chất lượng cao, 100 % không có lỗi
Kiểm thử chị giúp cho sản phẩm đạt chất lượng tốt hơn, ngăn chặn các lỗi dễ dàng phát sinh
Kiểm thử tự động tốt hơn kiểm thử bằng tay
Kiểm thử tự động không thể kiểm tra
100 % nội dung, một số trường hợp vẫn phải kiểm thử bằng tay
Phân loại kiểm thử phần mềm
Kiểm thử phần mềm không phải làm việc đơn lẻ Nó có nhiều hình thức khác nhau và được phân loại theo một số tiêu chí Về cơ bản, kiểm thử phần mềm được chia làm bốn loại:
- Kiểm thử phi chức năng
- Kiểm thử liên quan tới các thay đổi.
Kiểm thử phần mềm bao gồm những giai đoạn nào ?
Mô hình dưới đây sẽ mô tả các giai đoạn trong kiểm thử phần mềm Software testing bao gồm: Nhận yêu cầu đặt tả => Lập kế hoạch => Tạo test design/ test case =>Thực hiện kiểm thử => Tạo test
CÔNG CỤ KIỂM THỬ APPLITOOLS
GIỚI THIỆU APPLITOOLS
- Applitools là một công ty phát triển công nghệ kiểm thử tự động và giám sát giao diện người dùng (UI) cho ứng dụng web và di động Công cụ chính của Applitools là Applitools Eyes, một nền tảng kiểm thử tự động và giám sát giao diện người dùng thông minh
- Applitools Eyes sử dụng công nghệ AI và phân tích hình ảnh để phát hiện và nhận biết các thay đổi trong giao diện người dùng của ứng dụng Nó giúp đảm bảo tính nhất quán và chất lượng của giao diện người dùng trên nhiều nền tảng và trình duyệt khác nhau.
CÁC TÍNH NĂNG CHÍNH
2.2.1.Kiểm thử hình ảnh tự động
- Xác định kịch bản kiểm thử
- Chụp ảnh giao diện người dùng
- Xử lý tình huống đặc biệt
- Báo cáo và theo dõi
- Là 1 lĩnh vực của trí tuệ nhân tạo tập trung vào việc làm cho máy tính có khả năng nhìn và hiểu thông tin từ hình ảnh, video giống như con người
- Công nghệ này giúp người dùng tự động kiểm thử giao diện người dùng và kiểm thử hiệu suất của ứng dụng
2.2.3.Tích hợp với các FrameWork kiểm thử
- Giúp đơn giản hóa và tăng cường quy trình kiểm thử của các nhà phát triển và các nhóm kiểm thử
- Applitools cung cấp SDK cho nhiều ngôn ngữ lập trình phổ biến như C#, JavaScript, Python…
- Cho phép nhà phát triển và nhóm kiểm thử sử dụng ngôn ngữ ưa thích của họ để tích hợp và triển khai Applitools vào quy trình kiểm thử
2.2.4.Kiểm thử đa trình duyệt và đa thiết bị
Tầm quan trọng: là phần rất quan trọng để đảm bảo ứng dụng hoạt động mượt mà và đáp ứng trên mọi nền tảng
- Sử dụng trình duyệt phổ biến
- Kiểm thử trình duyệt cũ và thiết bị hiệu năng thấp
- Tích hợp công cụ tự động như Selenium hay TestCafe
- Kiểm thử trên iOS và Android
- Đảm bảo ứng dụng phù hợp trên nhiều loại thiết bị di động
❖ Visual Testing: Sử dụng Applitools để theo dõi giao diện trực quan trên nhiều trình duyệt và thiết bị
❖ Hiệu suất và Reponsive Design
- Đảm bảo hiệu suất tốt trên mọi môi trường
- Sử dụng Reponsive Design để tích hợp ứng dụng trên các kích thước màn hình
2.2.5.Kiểm thử đáp ứng và thiết kế động:
Kiểm thử đáp ứng và tiết kế động: là quá trình đảm bảo 1 trang web hoặc ứng dụng có khả năng đáp ứng đúng đắn trên nhiều kích thước màn hình và thiết bị khác nhau
- Mục tiêu: Đảm bảo hiển thị chính xác trên nhiều kích thước màn hình
- Chiến lược: Kiểm thử trực tiếp và tự động nhiều thiết bị
❖ Kiểm thử thiết kế động
- Mục tiêu: Đảm bảo hiệu ứng và tương tác hoạt động đúng
- Chiến lược: Kiểm thử hiệu ứng, chuyển động và tương tác người dùng
- Mục tiêu: Đảm bảo trải nghiệm đồng đều trên mọi thiết bị
- Chiến lược: Tích hợp kiểm thử tự động và sử dụng công cụ trình duyệt và đa thiết bị
- Là quá trình kiểm tra và đánh giá hệ thống thông qua việc thực hiện các tác vụ, kiểm tra hành vi và xem xét kết quả khi chương trình đang chạy
- Đảm bảo hiệu ứng chuyển động mượt mà
- Đảm bảo video và âm thanh phát lại chính xác trên các nền tảng
- Đảm bảo tương tác nh nút bấm, kéo thả hoạt động chính xác trên nhiều thiết bị
- Đảm bảo hiển thị chính xác và không gây lỗi trang với đồ họa động như GIF hoặc SVG trên nhiều trình duyệt và thiết bị
- Đảm bảo nội dung hoạt động trên nhiều trình duyệt phổ biến
2.2.7.Intergrations với công cụ quản lý mã nguồn và CI/CD
- Quản lí mã nguồn: hỗ trợ git, github, gitlab…
- CI/CD: Lugin cho Jenkins, tích hợp với Travis CI, Circle CI, Gitlab CI/CD
- Kiểm thử tự động: tương thích với Selenium, Appium, Cypress
- Quản lý dự án: tích hợp với Jira,Trello
- Giúp nhanh chóng định rõ và giải quyết vấn đề trực quan, tăng cường hiểu biết về tình trạng giao diện người dùng
- Xem chi tiết sự thay đổi giữa ảnh trước và sau
- Đánh giấu khu vực thay đổi trên giao diện
- Báo cáo mức độ thay đổi
- Tự động tạo báo cáo sau mỗi ca kiểm thử
- Tổng hợp thông tin từ nhiều phiếu kiểm thử
- Đánh giá và để lại phản hồi trực tiếp
2.2.9.Giám sát liên tục (Continuous Mornitoring)
- Giúp duy trì chất lượng và đồng nhất của giao diện người dùng 1 cách tự động và hiệu quả
- Giám sát trực quan liên tục trên nhiều trình duyệt và thiết bị
- Tự động báo cáo thay đổi
- Liên tục giám sát trạng thái giao diện
- Tích hợp dễ dàng vào CI/CD và quy trình phát triển
- Đảm bảo tính nhất quán trên mọi nền tảng
- Kiểm soát ứng dụng trên đa độ phân giải và thiết bị
CÀI ĐẶT CÔNG CỤ
- Truy cập trang web của Applitools: Để bắt đầu, hãy truy cập vào trang web chính của Applitools tại địa chỉ: https://applitools.com/
- Đăng ký tài khoản: Nếu bạn chưa có tài khoản, hãy nhấp vào nút "Get Started for Free" hoặc "Sign Up" trên trang chủ của Applitools Điền thông tin cần thiết và hoàn tất quy trình đăng ký
- Đăng nhập vào tài khoản: Sau khi đăng ký, đăng nhập vào tài khoản Applitools của bạn bằng cách nhấp vào nút "Sign In" trên trang chủ Nhập thông tin đăng nhập của bạn (địa chỉ email và mật khẩu) để truy cập vào giao diện người dùng của Applitools
- Cài đặt SDK Applitools: Applitools cung cấp các SDK cho nhiều ngôn ngữ và framework khác nhau, như Java, JavaScript, Python, C#, Ruby, và nhiều hơn nữa Chọn SDK phù hợp với ngôn ngữ và framework của bạn và làm theo hướng dẫn cài đặt cụ thể cho từng SDK trên trang web của Applitools
- Thêm tiện ích selenium ide vào chrome
- Tích hợp Applitools vào quy trình kiểm thử: Sau khi cài đặt SDK, bạn cần tích hợp Applitools vào quy trình kiểm thử của bạn Điều này có thể bao gồm việc sử dụng
16 các hàm và phương thức của SDK để ghi lại và kiểm tra giao diện người dùng của ứng dụng của bạn
- Thêm tiện ích applitools for selenium ide vào chrome
- Chạy kiểm thử và xem báo cáo: Khi đã tích hợp Applitools vào quy trình kiểm thử, bạn có thể chạy các bài kiểm thử và xem kết quả trên giao diện người dùng của Applitools Applitools sẽ so sánh các hình ảnh ghi lại từ các phiên bản khác nhau và tạo ra báo cáo về sự khác biệt và lỗi có thể xảy ra trong giao diện người dùng
- Lấy api key để đồng bộ với extension selenium ide
- Sao chép key sau đó add vào extension applitools
- Lúc này cần phải mở selenium ide
ỨNG DỤNG APPLITOOLS
Thực hiện kiểm thử chức năng Đăng nhập
3.1.1 Đặc tả kỹ thuật chức năng Đăng nhập
• Khi click vào 1 trong 4 nút Email, Facebook, Google, Apple với các giá trị hợp lệ, hệ thống sẽ chuyển về trang chủ của website
- Giao diện form Đăng nhập
Hình 3 1: Giao diện Đăng nhập
Khi đăng nhập vào website, hệ thống yêu cầu người dùng đã có tài khoản đăng kí trước đó Nhập thông tin vào form login bao gồm số điện thoại và mật khẩu Hoặc người dùng có thể lựa chọn tài khoản đăng nhập từ Gmail, Facebook, Apple,… sau đây là bộ test dùng tài khoản đăng nhập là số điện thoại và mật khẩu Bộ test sẽ dựa vào trường và nhận các giá trị sau:
- Số điện thoại : nhập đúng, nhập sai (định dạng số, định dạng chữ, kí tự đặc biệt) và để trống
- Mật khẩu : nhập đúng, nhập sai và để trống
Như vậy ta sẽ có bộ test gồm 15 bộ test case , lập bảng quyết định ta có:
Bảng 3 1 Bảng quyết định cho chức năng đăng nhập
- Test case 1: Nhập đúng số điện thoại và mật khẩu
Hành động Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang đăng nhập http://tinyurl.co m/3buvumv5
Hiển thị form đăng nhập Hiển thị form đăng nhập pass
Nhập đúng số điện thoại
0965560*** Hiển thị tài khoản vừa nhập
Hiển thị tài khoản vừa nhập pass
Hiện mật khẩu Hiện mật khẩu pass
Bấm nút đăng nhập Đăng nhập thành công Đăng nhập thành công pass
- Test case 2: Nhập đúng số điện thoại và nhập sai mật khẩu (password < 5 kí tự)
Hành động Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang đăng nhập http://tinyurl.co m/3buvumv5
Hiển thị form đăng nhập Hiển thị form đăng nhập pass
Nhập đúng số điện thoại
0965560*** Hiển thị tài khoản vừa nhập
Hiển thị tài khoản vừa nhập pass
Vuqu Hiện mật khẩu Hiện mật khẩu pass
Tên đăng nhập hoặc mật khẩu không đúng
Lỗi mật khẩu sai pass
- Test case 3: Nhập đúng số điện thoại và sai mật khẩu (password >
Hành động Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang đăng nhập http://tinyurl.co m/3buvumv5
Hiển thị form đăng nhập Hiển thị form đăng nhập pass
Nhập đúng số điện thoại
0965560*** Hiển thị tài khoản vừa nhập
Hiển thị tài khoản vừa nhập pass
Vuquoccuong Hiện mật khẩu Hiện mật khẩu pass
Tên đăng nhập hoặc mật khẩu chưa đúng
Lỗi mật khẩu sai pass
- Test case 4: Nhập đúng số điện thoại và khoảng trống mật khẩu
Hành động Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang đăng nhập http://tinyurl.co m/3buvumv5
Hiển thị form đăng nhập Hiển thị form đăng nhập pass
Nhập đúng số điện thoại
0965560*** Hiển thị tài khoản vừa nhập
Hiển thị tài khoản vừa nhập pass
Mật khẩu bỏ trống Mật khẩu bỏ trống pass
Tên đăng nhập mật khẩu chưa đúng
Không được bỏ trống mật khẩu pass
- Test case 5: Nhập sai số điện thoại và đúng mật khẩu
Hành động Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang đăng nhập http://tinyurl.co m/3buvumv5
Hiển thị form đăng nhập Hiển thị form đăng nhập pass
Nhập sai số điện thoại
0965560*** Hiển thị tài khoản vừa nhập
Hiển thị tài khoản vừa nhập pass
Hiện mật khẩu Hiện mật khẩu pass
Tên đăng nhập hoặc mật khẩu chưa đúng
Sai số điện thoại pass
- Test case 6: Nhập sai số điện thoại (kí tự thường) và mật khẩu
Hành động Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang đăng nhập http://tinyurl.co m/3buvumv5
Hiển thị form đăng nhập Hiển thị form đăng nhập pass
Nhập sai số điện thoại
Vuquoccuong Hiển thị tài khoản vừa nhập
Hiển thị tài khoản vừa nhập pass
Nhập sai mật khẩu tradaocamsa Hiện mật khẩu Hiện mật khẩu pass
Tên đăng nhập hoặc mật khẩu sai
Nhập một số điện thoại hợp lệ pass
- Test case 7: Nhập sai số điện thoại (kí tự đặc biệt) và mật khẩu
Hành động Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang đăng nhập http://tinyurl.co m/3buvumv5
Hiển thị form đăng nhập Hiển thị form đăng nhập pass
Nhập sai số điện thoại
Qưẻty Hiển thị tài khoản vừa nhập
Hiển thị tài khoản vừa nhập pass
Vuquoccuong Hiện mật khẩu Hiện mật khẩu pass
Tên đăng nhập hoặc mật khẩu chưa đúng
Số điện thoại không hợp lệ pass
- Test case 8: Nhập sai số điện thoại (kí tự số) và mật khẩu
Hành động Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang đăng nhập http://tinyurl.co m/3buvumv5
Hiển thị form đăng nhập Hiển thị form đăng nhập pass
Nhập sai số điện thoại
123456wẻty Hiển thị tài khoản vừa nhập
Hiển thị tài khoản vừa nhập pass
Vuquoccuong Hiện mật khẩu Hiện mật khẩu pass
Tên đăng nhập hoặc mật khẩu chưa đúng
Số điện thoại không hợp lệ pass
- Test case 9: Nhập thiếu số điện thoại và sai mật khẩu
Hành động Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang đăng nhập http://tinyurl.co m/3buvumv5
Hiển thị form đăng nhập Hiển thị form đăng nhập pass
Nhập sai số điện thoại
096 Hiển thị tài khoản vừa nhập
Hiển thị tài khoản vừa nhập pass
Vuquoccuong Hiện mật khẩu Hiện mật khẩu pass
Tên đăng nhập hoặc mật khẩu chưa đúng
Số điện thoại không hợp lệ pass
- Test case 10: Nhập thừa số điện thoại và sai mật khẩu
Hành động Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang đăng nhập http://tinyurl.co m/3buvumv5
Hiển thị form đăng nhập Hiển thị form đăng nhập pass
Nhập sai số điện thoại
Hiển thị tài khoản vừa nhập
Hiển thị tài khoản vừa nhập pass
Vuquoccuong Hiện mật khẩu Hiện mật khẩu pass
Tên đăng nhập hoặc mật khẩu chưa đúng
Số điện thoại không hợp lệ pass
- Test case 11: Nhập sai số điện thoại và mật khẩu
Hành động Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang đăng nhập http://tinyurl.co m/3buvumv5
Hiển thị form đăng nhập Hiển thị form đăng nhập pass
Nhập sai số điện thoại
1234567890 Hiển thị tài khoản vừa nhập
Hiển thị tài khoản vừa nhập pass
123456 Hiện mật khẩu Hiện mật khẩu pass
Tên đăng nhập hoặc mật khẩu chưa đúng
Số điện thoại không hợp lệ pass
- Test case 12: Nhập sai số điện thoại và khoảng trống mật khẩu
Hành động Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang đăng nhập http://tinyurl.co m/3buvumv5
Hiển thị form đăng nhập Hiển thị form đăng nhập pass
Nhập sai số điện thoại
12367890 Hiển thị tài khoản vừa nhập
Hiển thị tài khoản vừa nhập pass
Hiện mật khẩu Hiện mật khẩu pass
Tên đăng nhập hoặc mật khẩu chưa đúng
- Test case 13: Khoảng trống số điện thoại và nhập đúng mật khẩu
Hành động Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang đăng nhập http://tinyurl.co m/3buvumv5
Hiển thị form đăng nhập Hiển thị form đăng nhập pass
Bỏ trống số điện thoại
Hiển thị tài khoản vừa nhập
Hiển thị tài khoản vừa nhập pass
Hiện mật khẩu Hiện mật khẩu pass
Tên đăng nhập hoặc mật khẩu chưa đúng
Nhập số điện thoại pass
- Test case 14: Khoảng trống số điện thoại và nhập sai mật khẩu
Hành động Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang đăng nhập http://tinyurl.co m/3buvumv5
Hiển thị form đăng nhập Hiển thị form đăng nhập pass
Bỏ trống số điện thoại
Hiển thị tài khoản vừa nhập
Hiển thị tài khoản vừa nhập pass
Vuquoccuong Hiện mật khẩu Hiện mật khẩu pass
Tên đăng nhập hoặc mật khẩu chưa đúng
Số điện thoại không được bỏ trống pass
- Test case 15: Bỏ trống số điện thoại và mật khẩu
Hành động Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang đăng nhập http://tinyurl.co m/3buvumv5
Hiển thị form đăng nhập Hiển thị form đăng nhập pass
Bỏ trống số điện thoại
Hiển thị tài khoản vừa nhập
Hiển thị tài khoản vừa nhập pass
Hiện mật khẩu Hiện mật khẩu pass
Tên đăng nhập hoặc mật khẩu chưa đúng
Nhập số điện thoại và mật khẩu pass
STT Số điện thoại Mật khẩu
Bảng 3 17 : Bảng dữ liệu kiểm thử cho chức năng đăng nhập
• Bước 1: Khởi động Chorme và chạy Selenium IDE
• Bước 2: Nhập địa chỉ website vào thanh URL http://tinyurl.com/3buvumv5 Khi mở Selenium, mặc định nút Record đang được bật
Hình 3 2: Hình trang Selenium chuẩn bị test
• Bước 3: Click “Đăng nhập” để mở màn hình nhập thông tin người dùng để hoàn tác thao tác
• Bước 4: Sau khi đăng nhập tài khoản thành công thì click btn
Record để dừng việc ghi kịch bản Chúng ta sẽ làm tương tự cho 8 trường hợp còn lại được xây dựng theo test case ở trên hoặc dựa vào bảng quyết định mà chúng ta đã xây dựng
• Bước 5: Chạy lại và thực thi kịch bản kiểm thử
✓ Sau khi tạo được một kịch bản với Selenium IDE, chúng ta sẽ thực thi nó để thấy kịch bản có ổn định hay không Click vào nút Play back để chạy kịch bản
✓ Sau khi thực hiện, tất cả các bước kiểm thử sẽ được highlight màu xanh với những case thành công
Với những trường hợp testcase lỗi hoặc thực thi không thành công, các bước kiểm thử lỗi sẽ được highlight màu đỏ Và Pane test case cũng sẽ đành dấu các test case thực thi lỗi
Thực hiện kiểm thử chức năng Tìm kiếm
3.2.1 Đặc tả kỹ thuật chức năng Tìm kiếm
- Chức năng tìm kiếm chuyến bay
• Textbox: “Tìm kiếm trên Kiwi.com”
• Nút “Tìm kiếm” Khi click vào nút tìm kiếm với các giá trị hợp lệ, hệ thống sẽ chuyển sang trang tương ứng
Hình 3 5: Thanh tìm kiếm chuyến bay
Hình 3 6: Đang nhập thông tin địa điểm
- Trên giao diện trang chủ của website, nhấp vào ô tìm kiếm để nhập các giá trị đầu vào ta xét được các trường hợp sau:
• Tìm kiếm: nhập đúng, nhập sai, để trống
- Như vậy theo tích Dercartes ta sẽ có bộ test gồm 3 bộ testcase , lập bảng quyết định ta có: Điều kiện 1 2 3 4 5 6
Emoji F Độ dài kí tự F
“Vẫn tồn tại ở trang chủ” X x x x
Bảng 3 18 : Bảng quyết định kiểm thử cho chức năng tìm kiếm
- Test case 1: Nhập đúng dại điểm tìm kiếm
Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang tìm kiếm https://www.kiwi.c om/en/?inboundDa te=anytime&outbo undDate=anytime
Truy cập website thành công
Truy cập website thành công
Nhập dữ liệu tìm kiếm
Hà Nội => Hồ Chí Minh
Tìm kiếm thành công Tìm kiếm thành công
Button search Tìm kiếm thành công Tìm kiếm thành công pass
- Test case 2: Nhập tìm kiếm theo kí tự thường kết hợp với số
Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang tìm kiếm https://www.kiwi. com/en/?inbound Date=anytime&o utboundDate=any time&destination
Truy cập website thành công
Truy cập website thành công
Nhập dữ liệu tìm kiếm
Hiển thị dữ liệu đã nhập
Hiển thị dữ liệu đã nhập
Button search Tìm kiếm gần đúng Hiển thị kết quả gần đúng pass
- Test case 3: Nhập tìm kiếm theo kí đặc biệt
Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang tìm kiếm https://www.kiw i.com/en/?inbou ndDate=anytime
Truy cập website thành công
Truy cập website thành công
Nhập dữ liệu tìm kiếm
@#ss Hiển thị dữ liệu đã nhập
Hiển thị dữ liệu đã nhập
Button search Tìm kiếm không ra kết quả
Hiển thị dữ liệu gần đúng pass
- Test case 4: Nhập tìm kiếm theo Emoji
Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang tìm kiếm https://www.kiwi.co m/en/?inboundDate
=anytime&outboun dDate=anytime&de stination=-
Truy cập website thành công
Truy cập website thành công
Nhập dữ liệu tìm kiếm emoji 🌷👩👨 Hiển thị dữ liệu đã nhập
Hiển thị dữ liệu đã nhập
Button search Không hiển thị kết quả
Hiển thị kết quả gần đúng pass
- Test case 5: Nhập tìm kiếm theo độ dài kí tự
Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang tìm kiếm https://www.kiwi.co m/en/?inboundDate
=anytime&outboun dDate=anytime&de stination=-
Truy cập website thành công
Truy cập website thành công
Nhập dữ liệu tìm kiếm
Croatia bước vào World Cup 2022 với tư cách là một ứng cử viên vô địch nhờ ngôi vị đương kim Á quân của mình
Những cầu thủ thuộc thế hệ vàng bóng đá Croatia đang chơi giải đấu được
Hiển thị dữ liệu đã nhập
Hiển thị dữ liệu đã nhập
Button search Không hiển thị kết quả đã nhập
Hiển thị kết quả gần đúng pass
- Test case 6: Nhập tìm kiếm theo trường hợp rỗng dữ liệu
Dữ liệu Kết quả mong muốn Kết quả thực tế
Mở trang tìm kiếm https://www.kiwi.co m/en/?inboundDate
=anytime&outboun dDate=anytime&de stination=-
Truy cập website thành công
Truy cập website thành công
Nhập dữ liệu tìm kiếm
Rỗng dữ liệu Rỗng dữ liệu
Button search Vẫn tồn tại ở trang chủ
Vẫn tồn tại ở trang chủ pass
World Cup 2022 với tư cách là một ứng cử viên vô địch nhờ
Bảng 3 25 : Bảng dữ liệu kiểm thử cho chức năng tìm kiếm
• Bước 1: Khởi động Chorme và chạy Selenium IDE
• Bước 2: Nhập địa chỉ website vào thanh URL https://www.kiwi.com/en/?inboundDate=anytime&outbound Date=anytime&destinatio=- Khi mở Selenium, mặc định nút Record đang được bật
Hình 3 7: Selenium đang chuẩn bị test
• Bước 3: Click “Tìm kiếm” để mở màn hình tìm kiểm một keyword nào đó Như trình bày ở trên, nhóm em đang tìm kiếm keyword “Hà Nội => Hồ Chí Minh”
• Bước 4: Sau khi tìm kiếm theo keyword thành công thì click btn Record để dừng việc ghi kịch bản Chúng ta sẽ làm tương
50 tự cho 3 trường hợp còn lại được xây dựng theo test case ở trên hoặc dựa vào bảng quyết định mà chúng ta đã xây dựng
• Bước 5: Chạy và thực thi các kịch bản kiểm thử