LỜI MỞ ĐẦU Với sự phát triển vượt bậc của công nghệ thông tin và ngành công nghiệp phần mềm, các công cụ hỗ trợ phát triển phần mềm ngày càng được hoàn thiện nhằm tối ưu hóa quy trình xây dựng và triển khai phần mềm. Tuy nhiên, do tính phức tạp của phần mềm cùng với những giới hạn về thời gian và chi phí, việc đảm bảo chất lượng phần mềm vẫn là một thách thức lớn. Dù các hoạt động kiểm thử phần mềm ngày càng được chú trọng và áp dụng các phương pháp khoa học, không thể tránh khỏi việc lỗi vẫn tồn tại trong sản phẩm, gây ra những hậu quả không mong muốn. Kiểm thử phần mềm không chỉ là một giai đoạn riêng lẻ mà là một quy trình xuyên suốt mọi giai đoạn phát triển phần mềm.
Mục tiêu của kiểm thử là đảm bảo rằng phần mềm đáp ứng được các yêu cầu thiết kế cũng như nhu cầu thực tế của người dùng. Các kỹ thuật và công cụ kiểm thử phần mềm không ngừng được nghiên cứu và phát triển, khiến kiểm thử trở thành một bước không thể thiếu trong các dự án phần mềm chuyên nghiệp. Tuy nhiên, kiểm thử phần mềm đòi hỏi sự đầu tư lớn về thời gian, nguồn lực và cần có chiến lược rõ ràng, kế hoạch hợp lý cùng sự quản lý chặt chẽ để đảm bảo hiệu quả. Nhóm 7 quyết định chọn đề tài: “Xây dựng kế hoạch kiểm thử cho chức năng quản lý ph tùng của garage ô tô và kiểm thử tự động bằng công c Selenium”.
Trong quá trình thực hiện bài thảo luận, dù đã nỗ lực hết sức, nhưng do kiến thức và kỹ năng còn hạn chế, nhóm chúng em không thể tránh khỏi những thiếu sót. Chúng em rất mong nhận được những góp ý, nhận xét và đánh giá từ thầy để có thể hoàn thiện hơn. Chúng em xin chân thành cảm ơn! 1 A. KIỂM THỬ PHẦN MỀM 1.
Khái niệm Kiểm thử phần mềm là quá trình thực hiện một chương trình nhằm tìm kiếm và phát hiện ra các lỗi của phần mềm, xác định chất lượng của phần mềm, đảm bảo phần mềm đáp ứng 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. Kiểm thử phần mềm 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. 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: Đạt được sự tự tin và cung cấp thông tin về mức độ chất lượng. Để ngăn ngừa lỗi.
Đảm bảo rằng kết quả cuối cùng đáp ứng các yêu cầu kinh doanh và người sử dụng. Để đạt được sự tín nhiệm của khách hàng bằng cách cung cấp cho họ một sản phẩm chất lượng. Đạt được sự tự tin và cung cấp thông tin về mức độ chất lượng. Quy trình kiểm thử phần mềm a.
Xác định yêu cầu kiểm thử Đây là bước đầu tiên trong quy trình kiểm thử phần mềm, để chúng ta có thể kiểm tra đúng cần phải nắm chắc yêu cầu bài toán, mong muốn của người dùng và tập trung vào việc xác định yêu cầu và tiêu chuẩn kiểm thử, đảm bảo rằng các kết quả kiểm thử đáp ứng được các yêu cầu và tránh được các rủi ro có thể xảy ra. Đầu vào: Tài liệu SRS, tài liệu thiết kế, bản prototype. Các hoạt động: Đọ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.
Đầu ra: File Q & A. Lập kế hoạch kiểm thử 2 Khi đã nắm được yêu cầu, cần lên kế hoạch kiểm thử phần mềm để kiểm tra xem phần mềm có đáp ứng các yêu cầu hay không. Kế hoạch kiểm thử là cơ sở để test các sản phẩm hoặc phần mềm trong một dự án. Đầu vào: 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.
Các hoạt động: 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 và nguồn lực gồm 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, ai là người thực hiện. Đầu ra: Test plan, checklist.
Thiết kế kịch bản kiểm thử Trong giai đoạn này, tester sẽ thiết kế kịch bản kiểm thử theo tài liệu đặc tả yêu cầu bằng cách sử dụng các kỹ thuật thiết kế testcase. Dữ liệu kiểm thử cũng được chuẩn bị từ giai đoạn này. Đầu vào: Test plan, checklist và các tài liệu đặc tả đã được cập nhật. Các hoạt động: Review tài liệu: xác định công việc cần làm.
Viết test case/checklist. 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. Đầu ra: Test design, test case, check list, test data, test automation script.
Thiết kế môi trường kiểm thử Môi trường kiểm thử là một thiết lập của phần mềm và phần cứng để cho đội kiểm thử tiến hành kiểm tra các testcase. Đây là 1 trong những bước vô cùng quan trọng của quá trình kiểm thử và có thể được thực hiện song song với giai đoạn thiết kế testcase. Đầu vào: Test plan, smoke test case, test data. Các hoạt động: 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.
Đầu ra: 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ử Trong giai đoạn này, người tester sẽ thực hiện kiểm thử dựa trên bản kế hoạch kiểm thử và kịch bản kiểm thử đã được chuẩn bị. Các bug được tìm thấy sẽ được báo cáo lại cho nhóm phát triển phần mềm để sửa chữa. Đầu vào: Test design, test case, check list, test data, test automation script.
3 Các hoạt động: 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. Đầu ra: Test results, defect reports. Tng hợp, báo cáo Nhóm kiểm thử sẽ họp, thảo luận và phân tích để xác định các chiến lược cần triển khai trong tương lai, rút ra các kinh nghiệm từ quá trình kiểm thử hiện tại.
Mục đích của hoạt động này là để loại bỏ các khó khăn gặp phải trong dự án và tìm ra phương pháp tốt nhất cho các dự án trong tương lai. Đầu vào: Tất cả các tài liệu được tổng hợp từ giai đoạn đầu tiên. Các hoạ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 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. Đầu ra: Test report, test results final.
Các cấp độ kiểm thử a. Kiểm thử đơn vị Kiểm thử đơn vị là một cấp độ kiểm thử phần mềm cơ bản trong đó các đơn vị/thành phần riêng lẻ của một phần mềm được kiểm tra (Nó kiểm tra từng module riêng lẻ). Kiểm thử đơn vị có thể được thực hiện tách biệt với phần còn lại của hệ thống tùy thuộc vào mô hình vòng đời phát triển được chọn cho ứng dụng cụ thể đó. Mục đích là để xác nhận rằng mỗi đơn vị/thành phần của phần mềm thực hiện đúng với thiết kế.
Người tiến hành: Các nhà phát triển. Kiểm thử tch hợp Kiểm thử tích hợp là một cấp độ kiểm thử phần mềm trong đó các đơn vị riêng lẻ được kết hợp và kiểm tra thành một nhóm (Nó kiểm tra luồng dữ liệu từ một module đến các module khác). Mục đích của cấp độ thử nghiệm này là để lộ các lỗi trong sự tương tác giữa các đơn vị tích hợp, đảm bảo rằng hệ thống tích hợp đã sẵn sàng để thử nghiệm hệ thống. Khi nào: Được thực hiện sau kiểm thử đơn vị.
Người tiến hành: Các nhà phát triển hoặc người kiểm tra độc lập. Kiểm thử hệ thng 4 Kiểm thử hệ thống là một cấp độ kiểm thử phần mềm thực hiện trên một phần mềm hoàn chỉnh và tích hợp. Nó cho phép kiểm tra sự tuân thủ của hệ thống theo yêu cầu, kiểm tra sự tương tác tổng thể của các thành phần. Kiểm tra hệ thống thường xuyên nhất là kiểm tra cuối cùng để xác minh rằng hệ thống đáp ứng các đặc điểm kỹ thuật.
Kiểm tra hệ thống đánh giá cả nhu cầu chức năng và phi chức năng để thử nghiệm. Khi nào: Được thực hiện sau integration testing và trước acceptance testing. Người tiến hành: Người kiểm tra độc lập. Kiểm thử chấp nhận Kiểm thử chấp nhận là một mức độ kiểm thử, hệ thống được kiểm tra khả năng chấp nhận (liên quan đến nhu cầu, yêu cầu của người dùng và quy trình kinh doanh được tiến hành).
Mục đích chính của thử nghiệm này là để xác định xem hệ thống có đáp ứng các tiêu chí chấp nhận hay không và cho phép người dùng, khách hàng hoặc đơn vị được ủy quyền khác xác định có chấp nhận hệ thống hay không. Thời điểm: Được thực hiện cuối cùng, sau system testing và trước khi làm cho hệ thống có sẵn để sử dụng thực tế. Người tiến hành: Kiểm tra chấp nhận nội bộ được thực hiện bởi các thành viên của tổ chức đã phát triển phần mềm nhưng không liên quan trực tiếp đến dự án thường là các thành viên của Quản lý sản phẩm, Bán hàng và/hoặc Hỗ trợ khách hàng. Kiểm tra chấp nhận bên ngoài được thực hiện bởi những người không phải là nhân viên của tổ chức phát triển phần mềm.
Kiểm tra chấp nhận khách hàng được thực hiện bởi các khách hàng của tổ chức đã phát triển phần mềm. Kiểm tra chấp nhận người dùng được thực hiện bởi người dùng cuối của phần mềm. Các kỹ thuật kiểm thử phần mềm a. Kiểm thử hộp đen Kiểm tra hộp đen là một phương pháp kiểm thử phần mềm mà việc kiểm tra các chức năng của một ứng dụng không cần quan tâm vào cấu trúc nội bộ hoặc hoạt động của nó.