Xây Dựng và Kiểm Thử Chức Năng Quản Lý Điểm Sinh Viên Sử Dụng Google Test

Tài liệu nghiên cứu Thảo luận học phần kiểm thử phần mềm đề tài xây dựng và kiểm thử chức năng quản lý điểm sinh viên, tổng hợp lý thuyết và thực hành, cung cấp kiến thức chuyên

Trường đại học

Trường Đại Học Thương Mại

Chuyên ngành

Khoa HTTTKT & TMĐT

Người đăng

Ẩn danh

Thể loại

Bài Thảo Luận Học Phần

2024

89
5
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI MỞ ĐẦU

1. KIỂM THỬ PHẦN MỀM

1.1. Khái niệm

1.2. Quy trình kiểm thử phần mềm

1.3. Các cấp độ kiểm thử

1.4. Các kỹ thuật kiểm thử phần mềm

1.5. Kỹ thuật thiết kế ca kiểm thử

2. KIỂM THỬ TỰ ĐỘNG

2.1. Mục tiêu và nguyên tắc khi kiểm thử tự động

2.2. Kiến trúc của một bộ kiểm thử tự động

2.3. Ưu, nhược điểm khi sử dụng kiểm thử tự động

3. THỰC HÀNH KIỂM THỬ

3.1. PHÁT BIỂU BÀI TOÁN

3.1.1. Mô tả bài toán

3.1.2. Yêu cầu chức năng và phi chức năng

3.2. Bảng giá trị

3.3. Bảng cơ sở dữ liệu

3.4. Ca sử dụng

3.5. Cấu trúc kiểm thử

3.6. Giá trị đầu vào, giá trị đầu ra với các chức năng kiểm thử

3.7. CODE CHƯƠNG TRÌNH

3.8. KẾ HOẠCH KIỂM THỬ

3.8.1. Mục tiêu kiểm thử

3.8.2. Chiến lược kiểm thử

3.8.3. Tiêu chí đảm bảo đầu ra

3.8.4. Quy trình thực hiện

3.8.5. Lịch trình thực hiện

3.8.6. Hoạch định nguồn nhân lực

3.8.7. Phân công công việc

3.8.8. Các tài liệu báo cáo kiểm thử

3.9. THIẾT KẾ CA KIỂM THỬ

3.9.1. Thiết kế kiểm thử dựa trên mô tả ca sử dụng

3.9.2. Thiết kế kiểm thử hộp đen

3.9.3. Thiết kế kiểm thử lớp biên (chức năng Nhập điểm sinh viên)

3.9.4. Thiết kế kiểm thử phân hoạch tương đương (chức năng Nhập điểm sinh viên)

3.9.5. Thiết kế kiểm thử bảng quyết định (Chức năng tạo hồ sơ sinh viên)

3.9.6. Thiết kế kiểm thử hộp trắng

3.9.7. Kiểm thử với dòng điều khiển (Chức năng xóa điểm sinh viên)

3.9.8. Thiết kế kiểm thử dòng dữ liệu

3.10. CHUẨN BỊ KIỂM THỬ

3.10.1. Môi trường kiểm thử

3.10.2. Dữ liệu kiểm thử

3.11. THỰC HIỆN CA KIỂM THỬ

3.11.1. Thực hiện kiểm thử dựa trên tài liệu đặc tả

3.11.2. Thực hiện kiểm thử hộp đen

3.11.3. Thực hiện kiểm thử giá trị biên

3.11.4. Thực hiện kiểm thử phân hoạch lớp tương đương

3.11.5. Thực hiện kiểm thử bảng quyết định (chức năng tạo hồ sơ sinh viên)

3.11.6. Thực hiện kiểm thử hộp trắng

3.11.7. Thực hiện kiểm thử dòng điều khiển

3.11.8. Thực hiện kiểm thử dòng dữ liệu

3.11.9. Số lượng ca kiểm thử được xây dựng theo mỗi kỹ thuật

3.11.10. Số ca kiểm có thể phát hiện ra lỗi

3.11.11. Các ca kiểm thử không phát hiện ra lỗi

3.11.12. Số ca kiểm thử trùng lặp

3.12. KIỂM THỬ TỰ ĐỘNG BẰNG CÔNG CỤ GOOGLE TEST

3.12.1. Tổng quan về Google Test

3.12.2. Kiểm thử tự động chức năng nhập mã sinh viên

Tóm tắt

I. Tổng Quan Về Kiểm Thử Phần Mềm Quản Lý Điểm Sinh Viên

Kiểm thử phần mềm là một quy trình quan trọng trong phát triển phần mềm, đặc biệt là trong các hệ thống quản lý điểm sinh viên. Quy trình này giúp phát hiện lỗi và đảm bảo chất lượng sản phẩm. Việc áp dụng kiểm thử phần mềm không chỉ giúp nâng cao độ tin cậy mà còn giảm thiểu rủi ro trong quá trình sử dụng. Đặc biệt, việc sử dụng công cụ kiểm thử tự động như Google Test mang lại nhiều lợi ích cho việc kiểm thử các chức năng của hệ thống.

1.1. Khái Niệm Kiểm Thử Phần Mềm Là Gì

Kiểm thử phần mềm là quy trình đánh giá chất lượng sản phẩm phần mềm nhằm phát hiện lỗi và vấn đề. Nó đóng vai trò quan trọng trong việc đảm bảo rằng phần mềm hoạt động đúng như mong đợi và đáp ứng yêu cầu của người dùng.

1.2. Tại Sao Cần Kiểm Thử Phần Mềm Quản Lý Điểm Sinh Viên

Hệ thống quản lý điểm sinh viên cần được kiểm thử để đảm bảo tính chính xác và độ tin cậy. Việc phát hiện lỗi sớm giúp giảm thiểu chi phí và thời gian sửa chữa, đồng thời nâng cao trải nghiệm người dùng.

II. Những Thách Thức Trong Kiểm Thử Phần Mềm Quản Lý Điểm Sinh Viên

Kiểm thử phần mềm quản lý điểm sinh viên đối mặt với nhiều thách thức. Sự phức tạp của hệ thống, yêu cầu về tính chính xác và khả năng mở rộng là những vấn đề cần được giải quyết. Ngoài ra, việc kiểm thử thủ công có thể tốn thời gian và dễ dẫn đến sai sót.

2.1. Sự Phức Tạp Trong Kiểm Thử Chức Năng

Hệ thống quản lý điểm sinh viên có nhiều chức năng khác nhau, từ nhập điểm đến báo cáo thống kê. Mỗi chức năng cần được kiểm thử kỹ lưỡng để đảm bảo hoạt động chính xác.

2.2. Khó Khăn Trong Việc Đảm Bảo Tính Chính Xác

Tính chính xác của điểm số là rất quan trọng. Bất kỳ sai sót nào trong quá trình nhập điểm đều có thể ảnh hưởng đến kết quả học tập của sinh viên, do đó cần có quy trình kiểm thử chặt chẽ.

III. Phương Pháp Kiểm Thử Phần Mềm Quản Lý Điểm Sinh Viên

Để đảm bảo chất lượng phần mềm, cần áp dụng các phương pháp kiểm thử hiệu quả. Việc sử dụng Google Test cho kiểm thử tự động là một trong những giải pháp tối ưu. Phương pháp này giúp tiết kiệm thời gian và tăng độ chính xác trong quá trình kiểm thử.

3.1. Kiểm Thử Tự Động Với Google Test

Google Test là một công cụ mạnh mẽ cho phép thực hiện kiểm thử tự động. Nó giúp phát hiện lỗi nhanh chóng và chính xác, đồng thời giảm thiểu sự can thiệp của con người.

3.2. Thiết Kế Ca Kiểm Thử Hiệu Quả

Thiết kế ca kiểm thử cần dựa trên các yêu cầu chức năng và phi chức năng của hệ thống. Việc này giúp đảm bảo rằng tất cả các khía cạnh của phần mềm đều được kiểm thử đầy đủ.

IV. Ứng Dụng Thực Tiễn Của Kiểm Thử Phần Mềm Quản Lý Điểm Sinh Viên

Việc áp dụng kiểm thử phần mềm trong quản lý điểm sinh viên đã mang lại nhiều kết quả tích cực. Các trường học có thể đảm bảo rằng hệ thống hoạt động ổn định và chính xác, từ đó nâng cao chất lượng giáo dục.

4.1. Kết Quả Nghiên Cứu Về Kiểm Thử Phần Mềm

Nghiên cứu cho thấy rằng việc áp dụng kiểm thử tự động giúp phát hiện lỗi sớm hơn và giảm thiểu chi phí sửa chữa. Điều này đặc biệt quan trọng trong môi trường giáo dục.

4.2. Lợi Ích Của Kiểm Thử Tự Động

Kiểm thử tự động không chỉ tiết kiệm thời gian mà còn nâng cao độ chính xác. Các trường học có thể dễ dàng theo dõi và quản lý quá trình kiểm thử, từ đó cải thiện chất lượng phần mềm.

V. Kết Luận Về Kiểm Thử Phần Mềm Quản Lý Điểm Sinh Viên

Kiểm thử phần mềm quản lý điểm sinh viên là một yếu tố không thể thiếu trong quá trình phát triển phần mềm. Việc áp dụng các phương pháp kiểm thử hiệu quả, đặc biệt là kiểm thử tự động, sẽ giúp nâng cao chất lượng sản phẩm và đảm bảo sự hài lòng của người dùng.

5.1. Tương Lai Của Kiểm Thử Phần Mềm

Với sự phát triển của công nghệ, kiểm thử phần mềm sẽ ngày càng trở nên quan trọng. Các công cụ kiểm thử tự động sẽ tiếp tục được cải tiến để đáp ứng nhu cầu ngày càng cao của thị trường.

5.2. Đề Xuất Cho Các Dự Án Tương Lai

Các dự án phần mềm trong tương lai nên chú trọng đến việc áp dụng kiểm thử tự động. Điều này không chỉ giúp tiết kiệm thời gian mà còn nâng cao chất lượng sản phẩm.

10/07/2025
Thảo luận học phần kiểm thử phần mềm đề tài xây dựng và kiểm thử chức năng quản lý điểm sinh viên và kiểm thử tự động bằng công cụ google test

Trích đoạn nội dung tài liệu

LỜI MỞ ĐẦU Ngày nay, công nghệ ngày càng phát triển nhanh chóng, đã kéo theo hệ thống mạng và các phần mềm gia tăng về số lượng theo quy mô rộng và cả chất lượng của phần mềm theo chiều sâu. Từ đó đã làm nảy sinh ra nhiều vấn đề về lỗi hỏng hóc phần mềm không đáng có, gây ra những ảnh hưởng nghiêm trọng đến những mặt khác. Những lỗi này có thể do chính bản thân phần mềm bị hỏng hóc hoặc cũng có thể là do con người cố tình gây nên. Vấn đề nan giải và đầy tính cấp thiết ấy đang ngày càng có xu hướng mở rộng và càng khó giải quyết.

Vì vậy, yêu cầu đặt ra là cần có công tác kiểm thử phần mềm để có thể ngăn chặn và phòng ngừa các lỗi xuất hiện ở trong phần mềm. Tuy nhiên, số lượng phần mềm ngày càng lớn gây khó khăn không nhỏ đến hoạt động kiểm thử khi thực hiện kiểm thử thủ công. Từ đó đã xuất hiện các công cụ kiểm thử tự động nhằm hỗ trợ cho hoạt động kiểm thử, giúp giảm thời gian, giảm tài nguyên, tăng độ chính xác và sự đảm bảo. Đó là lý do nhóm chọn đề tài “Xây dựng và kiểm thử chức năng Quản lý điểm sinh viên và kiểm thử tự động bằng công cụ Google Test”.

KIỂM THỬ PHẦN MỀM 1. Khái niệm - Kiểm thử là quy trình kiểm chứng để đánh giá và tăng cường chất lượng của sản phẩm phần mềm, nhằm phát hiện lỗi hoặc bất cứ vấn đề gì về sản phẩm. Kiểm thử phần mềm (software testing) là một hoạt động kiểm tra, đánh giá chất lượng của 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í. Quy trình kiểm thử phần mềm 1.

Phân tích yêu cầu - Đầu vào: tài liệu đặc tả yêu cầu, tài liệu thiết kế hệ thống, tài liệu khách hàng, bản prototype của khách hàng yêu cầu (nếu 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: tài liệu chứa các câu hỏi và câu trả lời liên quan đến nghiệp vụ của hệ thống, tài liệu báo cáo tính khả thi, phân tích rủi ro của việc kiểm thử phần mềm. Lập kế hoạch kiểm thử - Đầu vào: các tài liệu đặc tả đã được cập nhật thông qua các câu hỏi và trả lời được đưa ra trong giai đoạn phân tích yêu cầu.

- 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.  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.

- Đầu ra: các tài liệu như test plan, test estimation, test schedule. Thiết kế kịch bản kiểm thử - Đầu vào: test plan, test estimation, test schedule, các tài liệu đặc tả đã được cập nhật. - 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. 6  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 lập môi trường kiểm thử - Đầu vào: test plan, smoke test case, test data. - 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 cài đặt đúng theo yêu cầu, sẵn sàng cho việc kiểm thử và kết quả của smoke test case.

Thực hiện kiểm thử - Đầu vào: test plan, test design, test case, check list, test data, test automation script. - Hoạt động:  Thực hiện các test case như thiết kế  So sánh với kết quả mong đợi sau báo cáo các bug xảy ra lên tool quản lý lỗi và theo dõi trạng thái của lỗi đến khi được sửa thành công.  Đo và phân tích tiến độ - Đầu ra: test results (kết quả kiểm thử), defect reports (danh sách các lỗi tìm được). Đóng chu trình kiểm thử - Đầu vào: tất cả những tài liệu liên quan đã được tổng hợp, ghi chép và hoàn thiện đầy đủ trong suốt quy trình kiểm thử của dự án - 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: các tài liệu Test report, Test results (final) 1. Các cấp độ kiểm thử Có 4 cấp độ kiểm thử phần mềm là: - Kiểm thử đơn vị (Unit Testing) là cấp độ kiểm thử cơ bản, thực hiện test từng module nhỏ trong hệ thống. 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ể đó. - Kiểm thử tích hợp (Integration Testing) có nghĩa là kiểm thử kết hợp.

Một dự án phần mềm được kết hợp bởi nhiều module riêng lẻ khác nhau và được code bởi nhiều lập trình viên khác nhau. Chính vì thế kiểm thử tích hợp là tích hợp kiểm tra các module riêng lẻ với nhau thành một nhóm - Kiểm thử hệ thống (System Testing) là thực hiện kiểm thử một hệ thống đã được tích hợp hoàn chỉnh để xác minh rằng nó đúng yêu cầu của phần mềm. Kiểm thử hệ thống nằm trong phạm vi kiểm thử hộp đen và do đó, không yêu cầu kiến thức về thiết kế bên trong của mã hoặc logic. 7 - Kiểm thử chấp nhận (Acceptance Testing): Sau khi kiểm tra hệ thống đã sửa tất cả hoặc hầu hết các lỗi, hệ thống sẽ được gửi đến người dùng hoặc khách hàng để kiểm tra chấp nhận.

Về cơ bản kiểm thử chấp nhận cũng khá giống kiểm thử hệ thống nhưng được thực hiện bởi khách hàng 1. Các kỹ thuật kiểm thử phần mềm - Kiểm thử hộp đen: là một phương pháp kiểm thử phần mềm được thực hiện mà không biết được cấu tạo bên trong của phần mềm, là cách mà các tester kiểm tra xem hệ thống như một chiếc hộp đen, không có cách nào nhìn thấy bên trong của cái hộp. Đối tượng kiểm thử có thể là 1 hàm chức năng, 1 module chức năng, 1 phân hệ chức năng. - Kiểm thử hộp trắng: là một phương pháp kiểm thử phần mềm trong đó tester biết về cấu trúc nội bộ / thiết kế.

Người kiểm tra chọn đầu vào để thực hiện các đường dẫn thông qua mã và xác định đầu ra thích hợp. Kiến thức lập trình và kiến thức thực hiện là rất cần thiết trong kiểm thử hộp trắng. Đối tượng được kiểm thử là 1 thành phần phần mềm, có thể là 1 hàm chức năng, 1 module chức năng, 1 phân hệ chức năng… - Kiểm thử hộp xám: là phương pháp kiểm thử phần mềm kết hợp giữa kiểm thử hộp đen và kiểm thử hộp trắng. Hộp xám trong kiểm thử phần mềm giống như bán trong suốt, nhìn vào sẽ thấy lớp vỏ bên ngoài và một phần cấu trúc bên trong.

Đối tượng kiểm thử: Cấu trúc mã, cách sử dụng ứng dụng, kiểm thử tích hợp 1. Kỹ thuật thiết kế ca kiểm thử - Kiểm thử tĩnh: Kiểm thử tĩnh là một kỹ thuật kiểm thử phần mềm để tìm kiếm lỗi trong code, thuật toán, tài liệu yêu cầu và tài liệu thiết kế mà không cần thực thi code. Kiểm thử tĩnh được ứng dụng ở giai đoạn đầu của quá trình phát triển phần mềm, giúp tránh lỗi sớm, dễ dàng xác định và giải quyết lỗi. Kiểm thử tĩnh cũng có thể rút kinh nghiệm từ các lỗi tìm được và cải tiến quy trình - Kiểm thử động: Kiểm thử động là một phương pháp kiểm thử phần mềm được sử dụng để kiểm tra hành vi động của mã phần mềm.

Mục đích chính của kiểm thử động là kiểm tra hành vi của phần mềm với các biến động hoặc các biến không phải là hằng số và tìm ra các khu vực yếu trong môi trường thời gian chạy phần mềm. Kiểm thử động là một trong các loại kiểm thử phần mềm, bao gồm cả kiểm thử tự động. KIỂM THỬ TỰ ĐỘNG 2. Khái niệm Kiểm thử tự động là quá trình sử dụng các công cụ và phần mềm để thực hiện các bước kiểm thử một cách tự động, thay vì thủ công bởi con người.

Các công cụ và kịch bản được thiết kế để tự động hóa việc thực hiện các bước kiểm thử, đánh giá kết quả và báo cáo kết quả kiểm thử. Mục tiêu và nguyên tắc khi kiểm thử tự động  Mục tiêu: Tăng tốc độ thực hiện kiểm thử: Kiểm thử tự động thực hiện các trường hợp kiểm thử bằng mã, giúp thực hiện kiểm thử nhanh hơn nhiều so với kiểm thử thủ công. Tiết kiệm thời gian và công sức cho các nhà kiểm thử, cho phép họ tập trung vào các nhiệm vụ quan trọng hơn như phân tích kết quả và thiết kế trường hợp kiểm thử mới. Tăng tính nhất quán: Các kịch bản kiểm thử tự động đảm bảo rằng các bước kiểm thử được thực hiện một cách chính xác và nhất quán mỗi lần.

Loại bỏ sự sai sót do con người, dẫn đến kết quả kiểm thử đáng tin cậy hơn. Tăng độ chính xác: Công cụ kiểm thử tự động có khả năng so sánh kết quả thực tế với kết quả mong đợi một cách chính xác. Phát hiện lỗi sớm và chính xác hơn so với kiểm thử thủ công.  Nguyên tắc: Tự động hóa mọi thứ có thể: Tự động hóa tất cả các công đoạn kiểm thử có thể, từ việc khởi chạy ứng dụng đến nhập dữ liệu và so sánh kết quả.

Giảm thiểu sự can thiệp của con người, giúp tăng tốc độ và hiệu quả của quá trình kiểm thử. Lặp lại: Chạy các kịch bản kiểm thử tự động nhiều lần để đảm bảo tính ổn định và độ tin cậy của ứng dụng. Phát hiện các lỗi tiềm ẩn có thể xảy ra sau nhiều lần sử dụng.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Tài liệu "Kiểm Thử Phần Mềm Quản Lý Điểm Sinh Viên Bằng Google Test" cung cấp cái nhìn sâu sắc về quy trình kiểm thử phần mềm trong lĩnh vực quản lý điểm sinh viên, sử dụng công cụ Google Test. Tài liệu này không chỉ giải thích các phương pháp kiểm thử hiệu quả mà còn nhấn mạnh tầm quan trọng của việc đảm bảo chất lượng phần mềm trong giáo dục. Độc giả sẽ tìm thấy những lợi ích rõ ràng từ việc áp dụng kiểm thử tự động, giúp tiết kiệm thời gian và nâng cao độ chính xác trong việc quản lý điểm số.

Nếu bạn muốn mở rộng kiến thức của mình về các khía cạnh khác của phát triển phần mềm, hãy tham khảo tài liệu Xây dựng phần mềm quản lý điểm sinh viên khoá luận tốt nghiệp đại học, nơi bạn có thể tìm hiểu thêm về quy trình phát triển phần mềm trong bối cảnh giáo dục. Ngoài ra, tài liệu Mô hình xác thực nghiệp vụ phần mềm theo hướng lập trình đặc tả sẽ giúp bạn nắm bắt các mô hình xác thực nghiệp vụ, một phần quan trọng trong việc phát triển phần mềm chất lượng. Cuối cùng, tài liệu Luận văn thạc sĩ khoa học máy tính sinh test case tự động cho chương trình chứa điều kiện phức tạp sử dụng giải thuật di truyền sẽ cung cấp cho bạn cái nhìn sâu sắc về việc tự động hóa kiểm thử, một xu hướng đang ngày càng trở nên phổ biến trong ngành công nghiệp phần mềm.