Kiểm Thử Phần Mềm Quản Lý Tài Sản tại VNPT Software - Đồ Án Tốt Nghiệp

Kiểm thử phần mềm quản lý tài sản tại VNPT Software: Đảm bảo chất lượng, hiệu năng và tính bảo mật. Quy trình kiểm thử chuyên nghiệp, toàn diện.

Trường đại học

Viện đại học Mở Hà Nội

Chuyên ngành

Công Nghệ Thông Tin

Người đăng

Ẩn danh

Thể loại

Đồ án tốt nghiệp

2017

69
2
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI NÓI ĐẦU

1. CHƯƠNG 1: TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM

1.1. Định nghĩa kiểm thử phần mềm

1.2. Mục tiêu của kiểm thử

1.2.1. Mục tiêu trực tiếp

1.2.2. Mục tiêu gián tiếp

1.3. Nguyên lý cơ bản của kiểm thử

1.4. Kiểm thử trong vòng đời phát triển phần mềm

1.4.1. Mô hình chữ V [4]

1.5. Quy trình kiểm thử phần mềm [5]

1.6. Các kỹ thuật kiểm thử [6]

1.6.1. Kiểm thử hộp đen

1.6.2. Kiểm thử hộp trắng

1.6.3. Kiểm thử hộp xám

1.7. Các cấp độ kiểm thử [4]

1.7.1. Kiếm thử đơn vị - Component test execution

1.7.2. Kiểm thử tích hợp – Integration test execution

1.7.3. Kiểm thử hệ thống - System test execution

1.7.4. Kiểm thử chấp nhận sản phẩm - Acceptance test execution

1.8. Kết chương

2. CHƯƠNG 2: HỆ THỐNG QUẢN LÝ TÀI SẢN TẠI VNPT SOFTWARE

2.1. Giới thiệu hệ thống

2.2. Công nghệ để phát triển hệ thống

2.3. Các bước phát triển phần mềm

2.4. Danh sách các chức năng của hệ thống [7]

2.5. Kết chương

3. CHƯƠNG 3: KIỂM THỬ HỆ THỐNG QUẢN LÝ TÀI SẢN TẠI VNPT SOFTWARE

3.1. Phương pháp kiểm thử hệ thống quản lý tài sản

3.2. Kế hoạch kiểm thử

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

3.2.2. Đánh giá rủi ro

3.2.3. Phân công nhân lực

3.2.4. Điều kiện thực hiện/kết thúc kiểm thử

3.2.4.1. Điều kiện thực hiện kiểm thử
3.2.4.2. Điều kiện kết thúc kiểm thử

3.2.5. Các tài liệu, báo cáo kiểm thử cần có

4. CHƯƠNG 4: KẾT QUẢ KIỂM THỬ

4.1. Tài liệu cho việc kiểm thử

4.1.1. Tài liệu đặc tả chức năng cho mức kiểm thử chấp nhận

4.1.2. Tài liệu phân tích thiết kế cho mức kiểm thử tích hợp

4.1.3. Tài liệu thiết kế vật lý hệ thống cho mức kiểm thử đơn vị

4.2. Thực hiện kiểm thử

4.2.1. Mức kiểm thử đơn vị

4.2.2. Mức kiểm thử tích hợp

4.2.3. Mức kiểm thử hệ thống

4.2.4. Mức kiểm thử chấp nhận sản phẩm

TÀI LIỆU THAM KHẢO

DANH MỤC CÁC HÌNH VẼ

DANH CÁC MỤC BẢNG

DANH MỤC CHỮ VIẾT TẮT

Tóm tắt

I. Tổng Quan Về Kiểm Thử Phần Mềm Quản Lý Tài Sản VNPT

Kiểm thử phần mềm đóng vai trò sống còn trong việc đảm bảo chất lượng phần mềm, đặc biệt quan trọng trong các dự án sản xuất hoặc gia công phần mềm. Tại Việt Nam, ngành công nghiệp phần mềm đang phát triển mạnh mẽ, do đó việc xem nhẹ kiểm thử phần mềm có thể dẫn đến xác suất thất bại cao. Hầu hết các công ty phần mềm uy tín đều yêu cầu tài liệu kiểm thử đi kèm với phần mềm, nếu không, phần mềm sẽ không được chấp nhận. Theo Glen Myers, kiểm thử phần mềm là quá trình thực thi một chương trình với mục đích tìm lỗi. IEEE định nghĩa kiểm thử là tiến trình vận hành hệ thống hoặc thành phần dưới những điều kiện xác định, quan sát hoặc ghi nhận xét kết quả và đưa ra đánh giá về hệ thống hoặc thành phần đó. Daniel Galin mô tả kiểm thử phần mềm là một quá trình được tiến hành bởi một nhóm chuyên viên kiểm thử, trong đó một đơn vị phần mềm, một nhóm các đơn vị được tích hợp, hoặc cả gói phần mềm được kiểm tra bằng cách chạy các chương trình trên máy tính. Tất cả các bước kiểm tra liên quan được tiến hành theo các thủ tục kiểm thử và các trường hợp kiểm thử đã được thông qua. Trong bối cảnh quản lý tài sản tại VNPT, việc kiểm thử đảm bảo hệ thống hoạt động chính xác, hiệu quả và đáp ứng các yêu cầu nghiệp vụ của doanh nghiệp. Kiểm thử phần mềm quản lý tài sản VNPT là quá trình không thể thiếu. Mục tiêu chính là phát hiện và xác định càng nhiều lỗi càng tốt, sau đó tiến hành sửa lỗi và kiểm tra lại cho đến khi đạt mức chất lượng chấp nhận được. Các trường hợp kiểm thử cần được thực hiện một cách hiệu quả trong giới hạn ngân sách và thời gian cho phép. Đồng thời, cần biên soạn tài liệu về các lỗi phần mềm thường gặp để ngăn ngừa và sửa chữa lỗi.

1.1. Định Nghĩa Chi Tiết về Kiểm Thử Phần Mềm VNPT

Theo Glen Myers:“Kiểm thử phần mềm là quá trình thực thi một chương trình với mục đích tìm lỗi” [1]. Theo IEEE “Kiểm thử là tiến trình vận hành hệ thống hoặc thành phần dưới những điều kiện xác định, quan sát hoặc ghi nhận xét kết quả và đưa ra đánh giá về hệ thống hoặc thành phần đó” [2]. Định nghĩa của Daniel Galin: “Kiểm thử phần mềm là một quá trình được tiến hành bởi một nhóm chuyên viên kiểm thử, trong đó một đơn vị phần mềm, một nhóm các đơn vị được tích hợp, hoặc cả gói phần mềm được kiểm tra bằng cách chạy các chương trình trên máy tính. Tất cả các bước kiểm tra liên quan được tiến hành theo các thủ tục kiểm thử và các trường hợp kiểm thử đã được thông qua” [3]. Điều này nhấn mạnh tầm quan trọng của việc hiểu rõ khái niệm và mục tiêu của kiểm thử.

1.2. Mục Tiêu và Nguyên Tắc Kiểm Thử Phần Mềm Quản Lý Tài Sản

Mục tiêu chính của kiểm thử là phát hiện và xác định càng nhiều lỗi càng tốt, sau đó sửa lỗi và kiểm tra lại cho đến khi đạt mức chất lượng chấp nhận được. Các trường hợp kiểm thử cần được thực hiện hiệu quả trong giới hạn ngân sách và thời gian. Đồng thời, cần biên soạn tài liệu về các lỗi phần mềm thường gặp để ngăn ngừa và sửa chữa lỗi. Có 7 nguyên tắc cơ bản cần chú ý khi kiểm thử phần mềm [4], các nguyên tắc đó là: Kiểm thử chỉ ra sự có mặt của lỗi, Kiểm thử càng sớm càng tốt, không thể kiểm thử vét cạn, phân cụm lỗi, nghịch lý thuốc trừ sâu, kiểm thử phụ thuộc vào ngữ cảnh và sai lầm về việc không có lỗi.

II. Thách Thức và Rủi Ro Trong Kiểm Thử Phần Mềm VNPT

Việc kiểm thử phần mềm quản lý tài sản tại VNPT đối mặt với nhiều thách thức. Một trong số đó là sự phức tạp của hệ thống, bao gồm nhiều module và chức năng khác nhau, đòi hỏi người kiểm thử phải có kiến thức sâu rộng về nghiệp vụ quản lý tài sản. Sai sót trong khâu kiểm thử có thể dẫn đến hậu quả nghiêm trọng, ảnh hưởng đến hoạt động quản lý tài sản của doanh nghiệp. Bên cạnh đó, việc đảm bảo tính bảo mật của dữ liệu cũng là một thách thức lớn, vì hệ thống quản lý tài sản chứa đựng thông tin nhạy cảm về tài sản của doanh nghiệp. Ngoài ra, việc cập nhật và bảo trì hệ thống kiểm thử để theo kịp sự thay đổi của phần mềm cũng đòi hỏi nguồn lực đáng kể. Quá trình giao tiếp giữa đội phát triển và đội kiểm thử đôi khi gặp khó khăn, dẫn đến sự chậm trễ trong việc sửa lỗi và cải tiến hệ thống. Một số rủi ro có thể kể đến như: Dev bàn giao sản phẩm chậm, nhân lực có chuyên môn còn hạn chế, Tester nghỉ đột xuất, không đủ thời gian hoàn thành, môi trường kiểm thử không cài đặt được chương trình, yêu cầu khách hàng thay đổi đột ngột, vấn đề trong giao tiếp giữa dev và tester.

2.1. Đánh Giá Rủi Ro và Giải Pháp Kiểm Thử Phần Mềm Quản Lý Tài Sản

Bảng 3.5 Đánh giá rủi ro STT Rủi ro Giải pháp Mức độ ảnh hưởng 1 Dev bàn giao sản phẩm Tăng thời gian làm Tiến độ công việc chậm việc bị chậm 2 Nhân lực: Dev có Nâng cao chuyên môn Tài liệu cung cấp chuyên môn còn hạn chế cho đội test còn nhiều sai sót, chậm tiến độ 3 Nhân lực: Có Tester nghỉ Chuyển giao nhiệm vụ Làm chậm kế đột xuất ngay cho người khác hoạch thực hiện Test 4 Thời gian: Không đủ Ưu tiên Test các chức Làm chậm tiến độ thời gian hoàn thành năng chính, những lỗi hoàn thành của dự đúng tiến độ có độ ưu tiên thấp Test án sau 5 Nhân lực: Tester có Nâng cao chuyên môn Bỏ sót lỗi trong quá chuyên môn còn hạn chế trình kiểm thử 6 Môi trường: Không cài Nhờ sự trợ giúp của Không thể thực đặt được chương trình đội lập trình hiện Test gây ảnh hưởng nghiêm trọng 7 Yêu cầu khách hàng Tập chung nhân lực, Mất hiệu lực của thay đổi đột ngột, yêu tăng thời gian làm các kết quả kiểm cầu bàn giao sản phẩm việc tra. đúng kế hoạch. 8 Vấn đề trong giao tiếp giữa dev và tester.

2.2. Các Thách Thức Kỹ Thuật Trong Kiểm Thử Hệ Thống VNPT

Một thách thức kỹ thuật lớn là việc xây dựng môi trường kiểm thử phù hợp, bao gồm cả phần cứng, phần mềm và dữ liệu. Môi trường kiểm thử cần phải mô phỏng chính xác môi trường thực tế để đảm bảo tính chính xác của kết quả kiểm thử. Ngoài ra, việc sử dụng các công cụ kiểm thử tự động cũng đòi hỏi kỹ năng chuyên môn cao và đầu tư ban đầu lớn. Bên cạnh đó, việc kiểm thử các tính năng bảo mật cũng là một thách thức không nhỏ, vì các cuộc tấn công mạng ngày càng trở nên tinh vi và phức tạp.

III. Cách Tiếp Cận và Phương Pháp Kiểm Thử Phần Mềm VNPT

Để đảm bảo chất lượng phần mềm quản lý tài sản tại VNPT, cần áp dụng một cách tiếp cận toàn diện và có hệ thống. Đầu tiên, cần xác định rõ các yêu cầu và mục tiêu của kiểm thử, sau đó lập kế hoạch kiểm thử chi tiết, bao gồm các giai đoạn, kỹ thuật và công cụ kiểm thử. Trong quá trình kiểm thử, cần áp dụng các kỹ thuật kiểm thử phù hợp, chẳng hạn như kiểm thử hộp đen, kiểm thử hộp trắng và kiểm thử hộp xám. Kiểm thử hộp đen tập trung vào chức năng của phần mềm mà không quan tâm đến cấu trúc bên trong, trong khi kiểm thử hộp trắng tập trung vào cấu trúc bên trong của phần mềm. Kiểm thử hộp xám kết hợp cả hai phương pháp. Ngoài ra, cần thực hiện kiểm thử ở các cấp độ khác nhau, từ kiểm thử đơn vị đến kiểm thử tích hợp và kiểm thử hệ thống. Việc sử dụng các công cụ kiểm thử tự động có thể giúp tăng hiệu quả và giảm chi phí kiểm thử. Cuối cùng, cần đánh giá kết quả kiểm thử và đưa ra các hành động khắc phục kịp thời.

3.1. Kế Hoạch và Chiến Lược Kiểm Thử Phần Mềm Quản Lý Tài Sản

Thời gian thực hiện dự án : 14 Tuần. Tài nguyên Nhân lực: 2 Tester – Thực hiện kiểm thử hệ thống theo nhiệm vụ được phân công. Hệ thống: 2 laptop và các công cụ hỗ trợ quá trình thực hiện kiểm thử. Yêu cầu tài liệu cho từng giai đoạn kiểm thử: Theo mô hình chữ V (hình 1.1) và các bước phát triển phần mềm (mục 2.3) đã trình bày thì chúng em có kế hoạch test cho các mức như sau: Unit testing (kiểm thử đơn vị), Integration testing (kiểm thử tích hợp), System testing (kiểm thử hệ thống), Acceptance testing (kiểm thử chấp nhận sản phẩm). Chiến lược kiểm thử bao gồm: Kiểm thử cấu trúc, Kiểm thử chức năng, Kiểm thử hồi quy.

3.2. Các Kỹ Thuật Kiểm Thử Phần Mềm Chính Được Áp Dụng

Có 3 kỹ thuật kiểm thử phần mềm chính là: Kiểm thử hộp đen, Kiểm thử hộp trắng, Kiểm thử hộp xám. Kỹ thuật kiểm thử hộp đen xem chương trình như là một “hộp đen”, trong đó người kiểm thử không quan tâm đến cấu trúc bên trong của chương trình mà chỉ quan tâm đến dữ liệu đầu vào và đầu ra sau khi được xử lý. Mục đích của kỹ thuật này là tìm kiếm các trường hợp mà chương trình không thực hiện theo các đặc tả của nó. Kỹ thuật kiểm thử hộp trắng hay còn gọi là “Kiểm thử cấu trúc” là kỹ thuật kiểm thử cho phép khảo sát cấu trúc bên trong của chương trình. Kiểm thử viên sẽ truy cập vào cấu trúc dữ liệu và giải thuật bên trong chương trình (cả mã lệnh thực hiện chúng). Kiểm thử hộp xám là kỹ thuật kiểm thử có sự kết hợp giữa kiểm thử hộp đen và kiểm thử hộp trắng.

IV. Ứng Dụng và Kết Quả Kiểm Thử Phần Mềm VNPT Software

Kết quả kiểm thử cho thấy hệ thống quản lý tài sản tại VNPT Software đã đạt được những tiến bộ đáng kể về chất lượng. Tuy nhiên, vẫn còn một số lỗi và vấn đề cần được khắc phục. Trong quá trình kiểm thử đơn vị, đã phát hiện một số lỗi liên quan đến tính chính xác của dữ liệu và khả năng xử lý ngoại lệ. Kiểm thử tích hợp đã phát hiện một số lỗi liên quan đến giao tiếp giữa các module. Kiểm thử hệ thống đã phát hiện một số lỗi liên quan đến hiệu năng và khả năng chịu tải. Kiểm thử chấp nhận sản phẩm đã nhận được phản hồi tích cực từ người dùng về tính năng và giao diện của phần mềm. Các lỗi và vấn đề đã được báo cáo cho đội phát triển để tiến hành sửa chữa và cải tiến. Sau khi sửa chữa, hệ thống đã được kiểm thử lại và kết quả cho thấy chất lượng đã được nâng cao đáng kể.

4.1. Các Mức Kiểm Thử và Kết Quả Chi Tiết Từ VNPT Software

Có các cấp độ khác nhau của thử nghiệm. Kiếm thử đơn vị - Component test execution. Kiểm thử tích hợp – Integration test execution. Kiểm thử hệ thống - System test execution. Kiểm thử chấp nhận sản phẩm - Acceptance test execution. Trong các quá trình phát triển phần mềm có quy định các giai đoạn như xác định và phân tích yêu cầu, thiết kế, mã hóa, kiểm tra và triển khai. Môi giai đoạn đi qua đều có các thử nghiệm tương ứng. Các bảng từ 4.4 đến 4.13 trình bày chi tiết về kết quả kiểm thử.

4.2. Tài Liệu và Quy Trình Kiểm Thử Phần Mềm Quản Lý Tài Sản

Các tài liệu cần thiết cho việc kiểm thử bao gồm: Tài liệu đặc tả chức năng hệ thống cho mức kiểm thử chấp nhận, Tài liệu phân tích thiết kế mức logic cho mức kiểm thử tích hợp, Tài liệu thiết kế vật lý hệ thống cho mức kiểm thử đơn vị. Các tài liệu này cung cấp thông tin chi tiết về yêu cầu, thiết kế và cấu trúc của phần mềm, giúp người kiểm thử lập kế hoạch và thực hiện kiểm thử một cách hiệu quả.

V. Kết Luận và Hướng Phát Triển Kiểm Thử Phần Mềm VNPT

Kiểm thử phần mềm quản lý tài sản tại VNPT là một quá trình phức tạp và đòi hỏi nhiều nguồn lực. Tuy nhiên, việc đầu tư vào kiểm thử là rất quan trọng để đảm bảo chất lượng và hiệu quả của phần mềm. Trong tương lai, cần tiếp tục nâng cao trình độ chuyên môn của đội ngũ kiểm thử, áp dụng các kỹ thuật và công cụ kiểm thử tiên tiến, và tăng cường sự hợp tác giữa đội phát triển và đội kiểm thử. Đồng thời, cần chú trọng đến việc tự động hóa quy trình kiểm thử để giảm chi phí và tăng tốc độ kiểm thử. Ngoài ra, cần nghiên cứu và áp dụng các phương pháp kiểm thử mới, chẳng hạn như kiểm thử dựa trên mô hình và kiểm thử khám phá. Cuối cùng, cần xây dựng một hệ thống quản lý chất lượng phần mềm toàn diện để đảm bảo rằng phần mềm luôn đáp ứng các yêu cầu của người dùng và doanh nghiệp.

5.1. Tầm Quan Trọng của Kiểm Thử trong Phát Triển Phần Mềm VNPT

Kiểm thử phần mềm là một hoạt động quan trọng để đảm bảo chất lượng phần mềm và là hoạt động mang tính sống còn trong các dự án sản xuất hoặc gia công phần mềm. Vì vậy, kiểm thử phần mềm đã trở thành quy trình bắt buộc trong các dự án phát triển phần mềm trên thế giới. Ở Việt Nam, ngành công nghiệp phần mềm đang phát triển thì không thể xem nhẹ việc kiểm thử phần mềm vì xác suất thất bại sẽ rất cao, hơn nữa, hầu hết các công ty phần mềm có uy tín đều đặt ra yêu cầu nghiêm ngặt là nếu một phần mềm không có tài liệu kiểm thử đi kèm thì sẽ không được chấp nhận.

5.2. Hướng Tới Tương Lai Tối Ưu Kiểm Thử Phần Mềm tại VNPT

Để tiếp tục nâng cao chất lượng phần mềm quản lý tài sản tại VNPT, cần tập trung vào việc tự động hóa quy trình kiểm thử, áp dụng các kỹ thuật kiểm thử tiên tiến và tăng cường sự hợp tác giữa đội phát triển và đội kiểm thử. Đồng thời, cần chú trọng đến việc đào tạo và phát triển đội ngũ kiểm thử để đáp ứng yêu cầu ngày càng cao của ngành công nghiệp phần mềm.

22/09/2025

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

CHƯƠNG 1 TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM 1. Định nghĩa kiểm thử phần mềm Theo Glen Myers:“Kiểm thử phần mềm là quá trình thực thi một chương trình với mục đích tìm lỗi” [1] Theo IEEE “Kiểm thử là tiến trình vận hành hệ thống hoặc thành phần dưới những điều kiện xác định, quan sát hoặc ghi nhận xét kết quả và đưa ra đánh giá về hệ thống hoặc thành phần đó” [2] Định nghĩa của Daniel Galin: “Kiểm thử phần mềm là một quá trình được tiến hành bởi một nhóm chuyên viên kiểm thử, trong đó một đơn vị phần mềm, một nhóm các đơn vị được tích hợp, hoặc cả gói phần mềm được kiểm tra bằng cách chạy các chương trình trên máy tính. Tất cả các bước kiểm tra liên được tiến hành theo các thủ tục kiểm thử và các trường hợp kiểm thử đã được thông qua” [3] Một số thuật ngữ có trong định nghĩa của Daniel Galin:  Nhóm chuyên viên kiểm thử: Một nhóm độc lập hoặc nhóm tư vấn từ bên ngoài, những người chuyên kiểm thử được chỉ định để thực hiện các nhiệm vụ chủ yếu là để phát hiện và loại bỏ sai lệch và để đảm bảo kiểm thử hiệu quả bởi các chuyên gia kiểm thử được đào tạo.  Các thủ tục kiểm thử đã được thông qua: Quá trình kiểm thử được thực hiện theo kế hoạch kiểm thử và các thủ tục kiểm thử được thông qua phù hợp với các thủ tục đảm bảo chất lượng phần mềm được thông qua bởi tổ chức phát triển phần mềm.

 Các trường hợp kiểm thử được thông qua: Các trường hợp kiểm thử (test case) được định nghĩa đầy đủ trong kế hoạch kiểm thử. Không có 2 sự thiếu xót hoặc bổ sung nào được mong đợi xảy ra trong suốt quá trình thực thi kiểm thử. Nói cách khác khi quá trình kiểm thử bắt đầu, người kiểm tra không được phép thực hiện theo ý riêng bằng cách bỏ qua một trường hợp kiểm thử mà họ cho là dư thừa. Mục tiêu của kiểm thử 1.

Mục tiêu trực tiếp Phát hiện và xác định càng nhiều lỗi càng tốt ở các phần mềm được kiểm thử. Tiến hành sửa lỗi ở các phần mềm được kiểm thử và kiểm thử lại cho đến khi đạt một mức độ chất lượng phần mềm chấp nhận được. Thực thi những trường hợp kiểm thử một cách hiệu quả trong một giới hạn ngân sách và lịch trình cho phép. Mục tiêu gián tiếp Để biên dịch một tài liệu về các lỗi phần mềm thường gặp, nhằm mục đích ngăn ngừa và sửa chữa lỗi.

Nguyên lý cơ bản của kiểm thử Có 7 nguyên tắc cơ bản cần chú ý khi kiểm thử phần mềm [4], các nguyên tắc đó là:  Kiểm thử chỉ ra sự có mặt của lỗi: Việc kiểm thử chỉ ra phần mềm có lỗi, nhưng không thể chứng minh rằng nó không có lỗi.  Kiểm thử càng sớm càng tốt: Các hoạt động kiểm thử nên bắt đầu càng sớm càng tốt trong vòng đời phát triển phần mềm.  Không thể kiểm thử vét cạn: Việc kiểm thử không thể thực hiện được cho tất mọi trường hợp. Do vậy thay vì kiểm thử mọi khía cạnh, ta phải tập trung vào kiểm thử những yếu tố quan trọng và nhiều rủi ro.

Nghĩa là phải lên kế hoạch kiểm thử, thiết kế các trường hợp kiểm thử sao cho có độ bao phủ nhiều nhất. 3  Phân cụm lỗi: Một số lượng nhỏ các module phần mềm có thể chứa hầu hết các lỗi được phát hiện ra trong suốt quá trình kiểm thử hoặc tập trung hầu hết các lỗi vận hành.  Nghịch lý thuốc trừ sâu: Nếu một phương pháp kiểm thử được lặp đi lặp lại nhiều lần, các trường hợp kiểm thử giống nhau sẽ không phát hiện được triệt để lỗi mới. Để khắc phục điều này ta có thể sử dụng nguyên tắc "nghịch lý thuốc trừ sâu", các trường hợp kiểm thử cần phải được xem xét và duyệt lại một cách đều đặn để phần mềm hoặc hệ thống tìm thấy nhiều lỗi hơn.

 Kiểm thử phụ thuộc vào ngữ cảnh: Việc kiểm thử thực hiện trong hoàn cảnh khác nhau thì khác nhau.  Sai lầm về việc không có lỗi: Tìm kiếm và sửa lỗi không thể giúp được gì nếu hệ thống không được dùng hoặc không đáp ứng được yêu cầu và sự mong đợi của khách hàng. Kiểm thử trong vòng đời phát triển phần mềm 1. Mô hình chữ V [5] Hình 1.1 Mô hình chữ V ( V - Model) Mô hình chữ V cho thấy các hoạt động phát triển phần mềm và kiểm thử phần mềm cần được thực hiện song song.

Các hoạt động phát triển phần mềm [5]:  Business requirements (Xác định yêu cầu): Đóng vai trò xác định yêu cầu bài toán, sau khi tài liệu này được hoàn thành thì được đưa vào để chuẩn bị các trường hợp kiểm thử ở mức chấp nhận sản phẩm.  System requirements (Yêu cầu hệ thống): Yêu cầu chi tiết từng chức năng của hệ thống.  High level design (Thiết kế mức cao): Giai đoạn này tập chung vào kiến trúc hệ thống và thiết kế. Nó cung cấp cái nhìn tổng quan về giải pháp, nền tảng, hệ thống, sản phẩm và quy trình.

5  Low level design (Thiết kế mức thấp): Giai đoạn này là nơi các thành phần phần mềm thực tế được thiết kế. Nó định nghĩa logic thực tế cho mỗi và mọi thành phần của hệ thống. Các giai đoạn kiểm thử trong mô hình chữ V:  Component testing (kiểm thử thành phần): Tìm kiếm lỗi và kiểm tra tính năng của các thành phần phần mềm (ví dụ như các module, class, object.) được kiểm tra riêng biệt.  Integration test (kiểm thử tích hợp): Kiểm thử các “module” hay các “component” khi chúng tích hợp với nhau.

 System test (kiểm thử hệ thống): Kiểm thử cả một hệ thống hoàn chỉnh khi toàn bộ các “module” hay “component” được tích hợp.  Acceptance test (kiểm thử chấp nhận sản phẩm): Kiểm thử cả hệ thống hoàn chỉnh như được cài đặt cho người dùng cuối. Quy trình kiểm thử phần mềm [6] Hình 1.2 Quy trình kiểm thử phần mềm Kiểm thử là một quá trình chứ không phải là một hoạt động đơn lẻ. Quá trình này bắt đầu từ việc xác định các yêu cầu, lập kế hoạch sau đó thiết kế các trường hợp kiểm thử chuẩn bị cho việc thực hiện và đánh giá cho đến khi kết thúc thử nghiệm.

Chúng ta có thể phân chia các hoạt động trong quá trình kiểm thử cơ bản thành các bước sau đây: 7  Xác định yêu cầu kiểm thử: Việc kiểm thử sẽ bắt đầu ngay từ pha lấy yêu cầu trong quy trình phát triển phần mềm (software development life cycle).  Lập kế hoạch và kiểm thử: ở giai đoạn này cần xác đinh các yêu cầu sau: - Các giai đoạn kiểm thử áp dụng cho dự án - Các phương pháp kiểm thử - Các công cụ kiểm thử - Nguồn nhân lực kiểm thử - Tài nguyên môn trường kiểm thử bao gôm phần cứng, phần mềm  Phân tích và thiết kế: Sau khi kế hoạch kiểm thử được thông qua, sẽ đến bước phân tích và thiết kế. Ở bước này chúng ta sẽ xây dựng kịch bản kiểm thử, chuẩn bị dữ liệu kiểm thử.  Thực hiện kiểm thử và cập nhật kết quả: - Thực hiện kiểm thử dựa trên các kịch bản kiểm thử,test script, thủ tục, dữ liệu có sẵn từ bước chuẩn bị kiểm thử.

- Tham gia quá trình quản lý lỗi: báo lỗi, sửa lỗi.  Báo cáo và phân tích dữ liệu kiểm thử: - Báo cáo kiểm thử. - Phân tích nguyên nhân và đề xuất các hành động khắc phục.  Lưu hồ sơ và kết thúc test: Khi đã đáp ứng được điều kiện dừng, thì các hoạt động chụp lại các kết quả chính, rút ra các kinh nghiệm bài học, tài liệu liên quan đến dự án sẽ được lưu trữ lại và sử dụng để kham khảo cho các dự án tiếp theo.

Các kỹ thuật kiểm thử [7] Có 3 kỹ thuật kiểm thử phần mềm chính là:  Kiểm thử hộp đen  Kiểm thử hộp trắng  Kiểm thử hộp xám 1. Kiểm thử hộp đen: Kỹ thuật kiểm thử hộp đen xem chương trình như là một “hộp đen”, trong đó người kiểm thử không quan tâm đến cấu trúc bên trong của chương trình mà chỉ quan tâm đến dữ liệu đầu vào và đầu ra sau khi được xử lý. Mục đích của kỹ thuật này là tìm kiếm các trường hợp mà chương trình không thực hiện theo các đặc tả của nó. Ưu điểm của kỹ thuật kiểm thử hộp đen là có thể đánh giá phần mềm một cách khách quan, người kiểm thử có thể không hiểu biết về mã lệnh và có thể tìm ra các lỗi mà nhân viên phát triển không tìm ra.

Song bên cạnh đó kiểm thử hộp đen còn có nhược điểm là thăm dò mù, do nhân viên kiểm thử không biết các chương trình được xây dựng như thế nào. Đó là lý do mà có nhiều trường hợp mà một kiểm thử viên hộp đen viết rất nhiều ca kiểm thử để kiểm tra một thứ gì đó mà đáng lẽ có thể chỉ cần kiểm tra bằng 1 ca kiểm thử duy nhất.3 Black box testing 9 Do vậy, kiểm thử hộp đen có ưu điểm của “một sự đánh giá khách quan”, mặt khác nó lại có nhược điểm của “thăm dò mù”. Kiểm thử hộp trắng Kỹ thuật kiểm thử hộp trắng hay còn gọi là “Kiểm thử cấu trúc” là kỹ thuật kiểm thử cho phép khảo sát cấu trúc bên trong của chương trình. Kiểm thử viên sẽ truy cập vào cấu trúc dữ liệu và giải thuật bên trong chương trình (cả mã lệnh thực hiện chúng).

Mục tiêu của phương pháp kiểm thử hộp trắng:  Tất cả các điều kiện logic đề được thực hiện  Tất cả vòng lặp đều được thực hiện tại biên  Bảo đảm mọi đường thực hiện độc lập trong một modun được thực hiện ít nhất một lần Hình 1.4 White box testing 10 1. Kiểm thử hộp xám Kiểm thử hộp xám là kỹ thuật kiểm thử có sự kết hợp giữa kiểm thử hộp đen và kiểm thử hộp trắng. Trong đó ta cũng quan tâm đến dữ liệu đầu vào và đầu ra giống như trong kiểm thử hộp đen, song lại đòi hỏi có sự truy cập đến cấu trúc dữ liệu và giải thuật để thiết kế các trường hợp kiểm thử.5 Gray box testing 11 1. Các cấp độ kiểm thử [5] Hình 1.6 Sơ đồ cấp độ kiểm thử Trong các quá trình phát triển phần mềm có quy định các giai đoạn như xác định và phân tích yêu cầu, thiết kế, mã hóa, kiểm tra và triển khai.

Môi giai đoạn đi qua đều có các thử nghiệm tương ứng. Do đó cũng có các cấp độ khác nhau của thử nghiệm.

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