Nguyên nhân của việc này đến từ sự thiếu hụt các đơn vị đào tạo chuyên sâu về kiểm thử và nguyên nhân xâu xa vẫn là vấn đề kiểm thử phần mềm ở Việt Nam vẫn chưa được chuyên nghiệp hóa và
KẾT QUẢ NGHIÊN CỨU
Tổng quan
Kiểm thử phần mềm (Software testing) là hoạt động nhằm tìm kiếm và phát hiện ra các lỗi của phần mềm, đảm bảo phần mềm chính xác, đúng và đầy đủ theo yêu cầu của khách hàng, yêu cầu của sản phẩm đã đặt ra Software testing cũng cung cấp mục tiêu, cái nhìn độc lập về phần mềm điều này cho phép đánh giá và hiểu rõ các rủi ro khi thực thi phần mềm Các phương pháp kiểm thử phần mềm:
Kiểm thử hộp trắng (white box testing): Trong kiểm thử hộp trắng cấu trúc mã, thuật toán được đưa vào xem xét Người kiểm thử truy cập vào mã nguồn của chương trình để có thể kiểm tra nó.
Kiểm thử hộp đen (black box testing) : Kiểm tra các chức năng của hệ thống dựa trên bản đặc tả yêu cầu.
Kiểm thử hộp xám (gray box testing): Là sự kết hợp giữa black box testing và white box testing
Kiểm thử phần mềm đóng vai trò rất quan trọng :
Kiểm thử phần mềm là hoạt động đảm bảo chất lượng phần mềm và mang tính sống còn trong các dự án sản xuất phần mềm Vì vậy nó đã trở thành quy trình bắt buộc trong các dự án phần mềm hiện nay.
Kiểm thử phần mềm để tránh những rủi ro, lỗi phát sinh trong suốt quá trình tạo ra sản phẩm.
Lỗi càng phát hiện ra sớm càng giúp tránh được rủi ro và chi phí.
Mục đích của kiểm thử phần mềm:
Kiểm thử phần mềm để đánh giá phần mềm có đạt yêu cầu mong đợi hay có sai sót nào không?
Phần mềm có làm việc như mong muốn không?
Phần mềm có giải quyết được yêu cầu của khách hàng không? Nó làm được gì mà người dùng mong đợi?
Người dùng có thích nó không?
Nó có tương thích với các hệ thống khác của chúng ta hay không?
2.1.2 Quy trình của kiểm thử phần mềm
Quy trình Đầu vào Các hoạt động Đầu ra
Tài liệu SRS, tài liệu thiết kế, bản prototype Đọc hiểu, nghiên cứu phân tích các yêu cầu có trong các bản tài liệu Đưa ra các câu hỏi còn thắc mắc về yêu cầu phần mềm với BA, team, leader, khách hàng để hiểu rõ hơn về yêu cầu sản phẩm
Các tài liệu đã được cập nhật thông qua file Q &
A trong giai đoạn phân tích yêu cầu
Xác định phạm vi kiểm thử: thời gian, lịch trình cho các công việc.
Xác định phương pháp tiếp cận
Xác định nguồn lực: con người và thiết bị.
Lên kế hoạch thiết kế công việc test: các chức năng cần kiểm thử, cái nào cần thực hiện trước, sau, ai là người thực hiện
Test plan, checklist và các tài liệu đặc tả đã được cập nhật
Review tài liệu: xác định công việc cần làm.
Chuẩn bị dữ liệu kiểm thử: test data, test script.
Review test case/checklist: tránh rủi ro trong thiết kế test case
Test design, test case, check list, test data, test automation script
Test plan, smoke test case, test data
Thực thi các smoke test case để kiểm tra môi trường kiểm thử đã sẵn sàng cho việc test chưa
Môi trường đã được chuẩn bị sẵn sàng cho việc test và các kết quả của smoke test case Thực hiện kiểm thử
Test design, test case, check list, test data, test automation script
Thực hiện test theo kịch bản kiểm thử.
So sánh kết quả thực tế với mong đợi và log bug lên tool quản lý lỗi, theo dõi quá trình xử lý lỗi.
Kết thúc Tất cả các tài liệu được tổng
Tổng kết báo cáo kết quả về việc thực thi test, chức năng nào hoàn
Test report, test results final hợp từ giai đoạn đầu tiên thành/ chức năng chưa hoàn thành, lỗi còn nhiều ở chức năng nào, dev nào còn nhiều lỗi, lỗi có nghiêm trọng hay không
Tìm hiểu công cụ kiểm thử phần mềm
WAPT (Web Application Penetration Testing) là quá trình kiểm thử đánh giá tính an toàn và độ tin cậy của một ứng dụng web bằng cách tìm kiếm các lỗ hổng bảo mật potenial để khai thác và tấn công vào ứng dụng đó Kỹ thuật này thường được sử dụng bởi các chuyên gia bảo mật để đảm bảo rằng ứng dụng web của họ đáp ứng được các tiêu chuẩn bảo mật cơ bản và không có lỗ hổng bảo mật nào có thể được khai thác bởi các kẻ tấn công.
Các bước thực hiện WAPT bao gồm:
Thu thập thông tin: thu thập thông tin về ứng dụng web để có được cái nhìn tổng quan về cấu trúc của ứng dụng và các tài nguyên, chức năng của nó.
Phân tích rủi ro: đánh giá các rủi ro bảo mật của ứng dụng bằng cách phân tích các yếu tố như kiến trúc ứng dụng, các nền tảng, các tính năng của ứng dụng, các cơ chế bảo mật được triển khai
Thử nghiệm: tìm kiếm các lỗ hổng bảo mật của ứng dụng bằng cách sử dụng các công cụ và kỹ thuật kiểm tra bảo mật, nghiên cứu và kiểm tra các lỗi phổ biến của ứng dụng web, tìm kiếm các lỗ hổng bảo mật đang tồn tại.
Báo cáo: lập báo cáo về các lỗ hổng bảo mật được phát hiện và đề xuất các giải pháp để khắc phục chúng.
WAPT (Web Application Performance Testing) là một công cụ kiểm thử hiệu suất ứng dụng web, với các đặc điểm sau:
- Đo lường hiệu suất: WAPT cho phép đo lường và đánh giá hiệu suất của ứng dụng
- Kiểm thử khả năng chịu tải: WAPT giúp kiểm tra khả năng chịu tải của ứng dụng web bằng cách giả lập các tình huống tải cao, đồng thời tìm ra các điểm yếu trong quá trình xử lý tải.
- Tùy chỉnh kịch bản kiểm thử: WAPT cho phép người dùng tùy chỉnh các kịch bản kiểm thử để đáp ứng các nhu cầu cụ thể của tổ chức.
- Giao diện đơn giản và dễ sử dụng: Giao diện người dùng của WAPT đơn giản và dễ sử dụng, cho phép người dùng tạo các kịch bản kiểm thử một cách dễ dàng.
- Báo cáo kết quả chi tiết: WAPT cung cấp các báo cáo kết quả kiểm thử chi tiết về độ tải, thời gian phản hồi, tốc độ truyền dữ liệu và các thông số hiệu suất khác.
- Hỗ trợ nhiều nền tảng: WAPT hỗ trợ kiểm thử các ứng dụng web trên nhiều nền tảng khác nhau, bao gồm Windows, Linux và macOS.
- Tự động hoá quá trình kiểm thử: WAPT có khả năng tự động hoá quá trình kiểm thử, giúp tiết kiệm thời gian và nâng cao hiệu quả kiểm thử.
- Tóm lại, WAPT là một công cụ kiểm thử hiệu suất ứng dụng web mạnh mẽ và linh hoạt, giúp các nhà phát triển và quản trị viên hệ thống đánh giá và cải thiện hiệu suất của ứng dụng web.
- WAPT là một công cụ kiểm thử hiệu suất ứng dụng web chuyên nghiệp, được sử dụng để đo lường và đánh giá hiệu suất của các ứng dụng web trong các môi trường khác nhau WAPT có tính linh hoạt và cho phép người dùng tùy chỉnh các kịch bản kiểm thử để đáp ứng các nhu cầu cụ thể của tổ chức.
- WAPT cung cấp các chức năng kiểm thử toàn diện cho hiệu suất ứng dụng web, bao gồm kiểm thử tải, kiểm thử khả năng chịu tải, giả lập các tình huống tải cao và các thông số hiệu suất khác Điều này giúp người dùng đánh giá được khả năng chịu tải của ứng dụng web và tìm ra các điểm yếu trong quá trình xử lý tải.
- Giao diện người dùng của WAPT đơn giản và dễ sử dụng, cho phép người dùng tạo các kịch bản kiểm thử một cách dễ dàng WAPT cung cấp các báo cáo kết quả kiểm thử chi tiết về độ tải, thời gian phản hồi, tốc độ truyền dữ liệu và các thông số hiệu suất khác Nhờ đó, người dùng có thể đánh giá và cải thiện hiệu suất của ứng dụng web một cách nhanh chóng.
- WAPT hỗ trợ kiểm thử các ứng dụng web trên nhiều nền tảng khác nhau, bao gồm Windows, Linux và macOS Đây là một lợi thế lớn khi người dùng có thể sử dụng WAPT trên các hệ thống khác nhau mà không cần phải chuyển đổi giữa các công cụ kiểm thử khác nhau.
- Cuối cùng, WAPT có khả năng tự động hoá quá trình kiểm thử, giúp tiết kiệm thời gian và nâng cao hiệu quả kiểm thử Tuy nhiên, việc sử dụng WAPT đòi hỏi người dùng có kỹ năng kỹ thuật và hiểu biết sâu về kiểm thử hiệu suất ứng dụng web.
2.2.3 Cài đặt và sử dụng công cụ WAPT 2.2.3.1 Cách cài đặt
Bước 1: Truy cập vào “https://www.loadtestingtool.com/download.shtml” để tiến hành tải xuống
Bước 2: Mở thư mục chứa file vừa tải về và nháy đúp vào biểu tượng đó để tiến hành cài đặt
Hình 2 2: File cài đặt sau khi tải xuống
Bước 3: Làm theo hướng dẫn và hoàn tất cài đặt
2.2.3.2 Cách sử dụng công cụ Wapt
Bước 1: Tạo kịch bản kiểm thử.
Bước 2: Chọn số người dùng cố định (từ 1 đến 20 user) Bước 3: Tạo 1 Profile.
1) Nhập đường link trang web cần test.
Chạy xong chức năng cần test ấn “Stop Rec”
Khi quá trình kiểm thử hoàn thành, kết quả sẽ được hiển thị thành một trang HTML gồm các bảng báo cáo.
Giới thiệu phần mềm Website Gsports
- Gsorts, có nhiệm vụ cung cấp các sản phẩm như mũ bảo hiểm, găng tay, quần áo, phụ kiện, của motor thông qua website Gsorts.vn và fanpage Mũ Bảo Hiểm Fullface Tất cả các mũ bảo hiểm bán trong hệ thống của
- Chúng tôi đều đạt chuẩn của Việt Nam và chuẩn quốc tế Tất cả sản phẩm mũ bảo hiểm, bảo hộ motor đều nhập chính hãng, có tem mác đầy đủ Gsorts luôn đăth chất lượng sản phẩm là ưu tiên hàng đầu.
- Mua hàng trực tuyến tại: https://gsports.vn/.
2.3.2 Tài liệu đặc tả yêu cầu phần mềm
Trình bày tài liệu đặc tả yêu cầu sản phẩm (SRS)
Kiểm thử website Gsport
Mục đích: Lên kế hoạch cho việc kiểm thử phần mềm website Gsorts, đảm bảo sản phẩm chương trinh viết ra đáp ứng hiệu suất:
- Xác định những thông tin dự án và các thành phần trang web được kiểm thử và không được kiểm thử.
- Liệt kê các yêu cầu kiểm thử.
- Nêu ra các chiến lược kiểm thử.
- Xác định nguồn tài nguyên - Nêu ra những phương pháp, chiến lược kiểm thử nên sử dụng - Lập lịch cho việc kiểm thử và phân kế hoạch cho từng thành viên
Gsorts là một website bán hàng trực tuyến được phát triển dựa trên ngôn ngữ:
Phần mềm này giúp khách hàng có thể dễ dàng tìm kiếm thông tin về các sản phẩm thời trang, các thương hiệu thời trang, đặt hàng trực tuyến,… giúp tiết kiệm thời gian và chi phí.
Kiểm tra hiệu năng của trang web phía khách hàng và người quản trị đã đáp ứng được các yêu cầu về hiệu suất và tốc độ hoạt động trong môi trường thực tế hay chưa, tăng cường trải nghiệm người dùng và giảm thiểu chi phí liên quan đến việc bảo trì sản phẩm Trang web có những chức năng chính sau:
1 Xem chi tiết sản phẩm: Use case cho phép khách hàng xem thông tin chi tiết của các sản phẩm.
2 Xem tin tức: Use case này cho phép khách hàng xem tin tức.
3 Xem giới thiệu: Use case này cho phép khách hàng xem giới thiệu.
4 Xem chính sách mua hàng: Use case này cho phép khách hàng xem chính sách mua hàng.
5 Xem đơn hàng: Use case cho phép khách hàng xem đơn hàng.
6 Quản lý giỏ hàng: Use case cho phép khách hàng thêm hàng vào giỏ, xóa mặt hàng trong giỏ, sửa số lượng hàng trong giỏ.
7 Tìm kiếm sản phẩm: Use case cho phép khách hàng tìm kiếm sản phẩm thông qua tên sản phẩm, tên thương hiệu.
8 Đặt hàng: Use case này cho phép khách hàng đặt mua các mặt hàng trong giỏ hàng.
1 Bảo trì danh mục: Use case cho phép người quản trị xem, thêm, sửa, xóa thông tin danh mục.
2 Bảo trì sản phẩm: Use case này cho phép người quản trị xem, thêm sửa và xóa các sản phẩm.
3 Bảo trì hình ảnh: Use case này cho phép người quản trị xem, thêm, sửa, xóa hình ảnh.
4 Bảo trì tin tức: Use case cho phép người quản trị xem, thêm, sửa, xóa các tin tức.
5 Bảo trì giới thiệu:Use case cho phép người quản trị xem, thêm, sửa, xóa các giới thiệu.
6 Bảo trì chính sách mua hàng: Use case cho phép người quản trị xem, thêm,7 sửa, xóa các tchính sách mua hàng
8 Bảo trì phương thức thanh toán: use case này cho phép người quản trị hệ thống xem, thêm sửa xóa thông tin phương thức thanh toán.
9 Quản lý đơn hàng: Use case này cho phép quản trị viên có quyền sửa, xóa thông tin đơn hàng.
10 Đăng nhập quản trị: Use case này cho phép người quản trị hệ thống đăng nhập với tư cách người quản trị để quản lí hệ thống.
Kiểm tra khả năng chịu tải và thời gian phản hồi của từng thành phần của website.
2.4.1.2 Các yêu cầu kiểm thử Phạm vi kiểm thử:
Trang chi tiết sản phẩm
Trang chính sách mua hàng
- Test level: System testing - Mục đích: Kiểm thử hiệu năng hệ thống là để đảm bảo rằng sản phẩm hoạt động ổn định và có khả năng đáp ứng được yêu cầu về hiệu suất trong môi trường thực tế Kiểm thử hiệu năng giúp xác định các vấn đề về hiệu suất của sản phẩm và tối ưu hóa nó trước khi ra mắt, từ đó tăng cường trải nghiệm người dùng và giảm thiểu chi phí liên quan đến việc bảo trì sản phẩm Ngoài ra, kiểm thử hiệu năng còn giúp các nhà phát triển tìm hiểu về hành vi hệ thống trong điều kiện tải cao và giải quyết các vấn đề tiềm ẩn trước khi sản phẩm được triển khai vào môi trường thực tế.
- Phương pháp: Kiểm thử hộp đen
- Xác định yêu cầu hiệu năng: Để xác định những yêu cầu cần hiệu năng cần thiết, chúng ta cần phải hiểu rõ business requirements và công nghệ sẽ được áp dụng trong sản phẩm.
- Thiết kế kịch bản kiểm thử: Thiết kế kịch bản kiểm thử là một quá trình rất quan trọng trong chiến lược kiểm thử hiệu năng
Chúng ta cần xác định các tác nhân ảnh hưởng đến hiệu năng của sản phẩm Sau đó chúng ta cần tạo ra các kịch bản kiểm thử hiệu năng dựa trên các tác nhân này.
- Thiết lập môi trường kiểm thử: Môi trường kiểm thử phải được chuẩn bị chu đáo để phục vụ cho quá trình kiểm thử hiệu năng.
Nó bao gồm phần cứng, phần mềm, cơ sở dữ liệu, mạng và người dùng cuối.
- Thực hiện kiểm thử: Quá trình kiểm thử hiệu năng được tiến hành theo các kịch bản kiểm thử Chúng ta cần ghi lại thông tin về tốc độ, bộ nhớ và CPU để xác định hiệu suất của sản phẩm.
- Phân tích kết quả kiểm thử: Các kết quả kiểm thử được phân tích để đánh giá hiệu suất của sản phẩm Nếu cần thiết, chúng ta sẽ điều chỉnh lại môi trường kiểm thử và thực hiện kiểm thử lại.
- Báo cáo và theo dõi: Khi quá trình kiểm thử hoàn thành, chúng ta sẽ tạo báo cáo về kết quả và đưa ra các khuyến nghị Sau đó, chúng
- ta sẽ theo dõi và đánh giá lại hiệu suất sau khi triển khai sản phẩm. Điều kiện hoàn thành:
- Chiến lược kiểm thử hiệu năng được coi là hoàn thành khi đáp ứng các tiêu chuẩn hiệu năng đã đặt ra Điều này có nghĩa là sản phẩm đạt được mức độ hiệu suất mong muốn và có thể hoạt động tốt trong môi trường thực tế.
Các vấn đề - Các yêu cầu hiệu năng phải được xác định rõ ràng và đầy đủ đặc biệt: để đảm bảo quá trình kiểm thử được thực hiện đúng mục tiêu.
- Môi trường kiểm thử phải được chuẩn bị kỹ càng để đảm bảo kết quả kiểm thử chính xác và minh bạch.
- Cần có các công cụ hiệu suất và phân tích kết quả hiệu năng để giúp xác định các vấn đề và tối ưu hóa hiệu suất của sản phẩm Việc triển khai sản phẩm có thể gặp phải các rủi ro không mong muốn, do đó cần phải có kế hoạch backup và phòng ngừa để đảm bảo sự ổn định của sản phẩm trong quá trình triển khai.
Bảng 5: Kiểm thử hiệu năng
Phần mềm Phiên bản Mục đích
Microsoft Excel 2016 Quản lí hoạt động kiểm thử Microsoft Word 2016 Quản lí Test plan, Báo cáo Google Chrome 113.0.5672.127 Thực hiện kiểm thử
Wapt 10.0 Thực hiện kiểm thử
Môi trường kiểm thử: Máy tính Windows 11 Nhân lực:
Nguyễn Ích Sơn Test Manager / Test Designer / Tester: Thiết kế các Test case, thực hiện kiểm thử hiệu năng cho trang đặt hàng.
Bùi Khánh Nam Test Designer / Tester: Thiết kế các Test case, thực hiện kiểm thử hiệu năng cho trang giới thiệuNguyễn Nhất Tâm Test Designer / Tester: Thiết kế các Test case, thực hiện
Trần Gia Hoàng Test Designer / Tester: Thiết kế các Test case, thực hiện kiểm thử hiệu năng cho trang xem chi tiết sản phẩm Dương Quang Vinh Test Designer / Tester: Thiết kế các Test case, thực hiện kiểm thử hiệu năng cho trang tìm kiếm
Các giai đoạn Nguồn Thời hạn
Xem chi tiết sản phẩm Trần Gia Hoàng 1 ngày 27/03/2024 28/03/2024
Xem chính sách mua hàng Nguyễn Nhất Tâm 3 ngày 27/03/2024 30/03/2024 Xem giới thiệu Bùi Khánh Nam 3 ngày 1/04/2024 4/04/2024 Tìm kiếm Dương Quang Vinh 2 ngày 3/4/2024 5/04/2024 Đặt hàng Nguyễn Ích Sơn 1 ngày 6/04/2024 7/04/2024
2.4.1.6 Tiêu chí chấp nhận sản phẩm
- Thời gian phản hồi nên nằm trong khoảng từ 0.1 đến 5 giây.
- Độ tin cậy nên đạt từ 95% đến 99%.
- Khả năng mở rộng nên được thiết kế để đáp ứng nhu cầu sử dụng của người dùng, ví dụ như có khả năng xử lý hàng trăm hoặc hàng nghìn yêu cầu cùng một lúc.
Khả năng chịu tải có thể đạt từ 100 đến 1000 yêu cầu đồng thời sử dụng.
2.4.2 Nguyễn Ích Sơn – Kiểm thử chức năng đặt hàng 2.4.2.1 Phân tích thiết kế kiểm thử
Hình 2 3: Giao diện chức năng đặt hàng
Chức năng đặt hàng được thực hiện bởi khách hàng với các trang gồm, trang chủ, giỏ hàng, thanh toán.
Phân tích tìm Test Case cho Trang Đặt Hàng bằng phương pháp bảng quyết định:
Kiểm thử phi chức năng
Kiểm thử hiệu suất cho Trang Đặt Hàng bằng công cụ kiểm thử tự động WAPT:
KIẾN THỨC LĨNH HỘI VÀ BÀI HỌC KINH NGHIỆM
Kiến thức và kỹ năng học được
Sau khi hoàn thành đề tài “Tìm hiểu và sử dụng các kỹ thuật kiểm thử được hỗ trợ bởi công cụ Wapt ”, nhóm chúng em đã phần nào có thể nắm được những kiến thức chuyên môn của môn học như:
- Hiểu hơn về quá trình kiểm thử phần mềm - Tìm hiểu được kiểm thử giao diện
- Tìm hiểu được công cụ kiểm thử Wapt.
Ngoài những kiến thức liên quan đến môn học, chúng em còn tích lũy, trau dồi thêm những kỹ năng mềm khác như:
- Kỹ năng làm việc nhóm- Kỹ năng quản lý thời gian, phân chia công việc- Biết lắng nghe và tiếp thu ý kiến của các thành viên- …
Bài học kinh nghiệm
- Thực hiện kiểm thử đầy đủ: Kiểm tra tất cả các tính năng, trang và chức năng - của trang web để đảm bảo nó hoạt động đúng và không có lỗi.
- Ghi lại và báo cáo các lỗi: Ghi lại tất cả các lỗi tìm thấy và tạo báo cáo chi tiết để gửi cho những người liên quan.
- Cập nhật kiến thức của mình: Học hỏi từ các lỗi tìm thấy và tìm hiểu cách để tránh chúng trong tương lai.
Chuẩn đầu ra đạt được
Những vấn đề đạt được:
- Nắm được tổng quan về kiểm thử phần mềm như các phương pháp, kĩ thuật kiểm thử phần mềm nói chung và công dụng, chức năng của kiểm thử Wapt nói riêng.
- Tìm hiểu và nắm được phương pháp thiết kế các kịch bản trong kiểm thử phần mềm và áp dụng phương pháp đó vào bài toán cụ thể.
- Nghiên cứu những chức năng và cách hoạt động kiểm thử của Wapt và sử dụng nó để kiểm thử cho trang web hoàn chỉnh. Đánh giá kết quả:
- Cài đặt và triển khai thành công phiên bản mới nhất của Wapt lên trang web cần kiểm thử
- Lập được các kịch bản cần thiết cho việc kiểm thử các chức năng quan trọng cho trang web
- Hoàn thành việc kiểm thử các ngoại lệ trong các chức năng quan trọng của trang web.