Tìm hiểu về test plan
Bài đăng này đã không được cập nhật trong 3 năm
Test plan - Kế hoạch kiểm thử
1. Test plan là gì?
Một kế hoạch kiểm thử dự án phần mềm (test plan) là:
- Một tài liệu mô tả các mục tiêu, phạm vi, phương pháp tiếp cận, và tập trung vào nỗ lực kiểm thử phần mềm.
- Quá trình chuẩn bị test plan là một cách hữu ích để suy nghĩ tới những nỗ lực cần thiết để xác nhận khả năng chấp nhận một sản phẩm phần mềm.
- Các tài liệu đã hoàn thành sẽ giúp mọi người bên ngoài nhóm test hiểu được 'tại sao' và 'như thế nào' chấp nhận sản phẩm.
- Nó cần phải hoàn hảo đủ để dùng được nhưng không đủ hoàn hảo vì không ai bên ngoài nhóm test sẽ đọc nó.
Nói một cách khác cho dễ hiểu thì Test Plan là: Tài liệu tổng quan về việc test 1 project. Scope của project, hướng tiếp cận, STLC(Software Testing Life Cycle), resource và nhân lực cần có, các features cần được test và không phải test, các tool test và môi trường test cần có. Có thể ví test plan là 1 cái xương sống của 1 testing project và là cái được chuẩn bị đầu tiên khi có 1 project.
Sau đây là một số hạng mục có thể được bao gồm trong một test plan, tùy thuộc vào từng dự án cụ thể:
- Tiêu đề
- Định nghĩa version của phần mềm (version release)
- Lưu lại quá trình hiệu chỉnh tài liệu như tác giả, ngày cập nhật, duyệt
- Mục lục
- Mục đích của tài liệu, ý kiến chung
- Mục tiêu của chi phí kiểm thử (test)
- Giới thiệu tổng quan về sản phẩm
- Danh sách tài liệu liên quan như spec, tài liệu thiết kế, các kế hoạch test khác,...
- Các tiêu chuẩn thích hợp, các yêu cầu hợp lệ
- Nguồn gốc của các sự thay đổi
- Assumptions and dependencies
- Phân tích rủi ro của dự án
- Các vấn đề ưu tiên và tập trung test
- Phạm vi và giới hạn test -Test phác thảo - phân tích cách tiếp cận theo loại test, tính năng, chức năng, quy trình, hệ thống, mô đun, v.v ... khi áp dụng
- Phân tích giá trị tương đương đầu vào, phân tích giá trị biên, các trường hợp lỗi
- Môi trường test - Phần cứng, hệ điều hành, phần mềm yêu cầu khác, cấu hình dữ liệu, giao diện với các hệ thống khác
- Phân tích tính hợp lệ của môi trường test - sự khác nhau giữa các hệ thống test - product và ảnh hưởng của chúng đối với tính hợp lệ của việc test.
- Các vấn đề thiết lập môi trường và cấu hình
- Quá trình chạy phần mềm
- Kiểm tra yêu cầu thiết lập dữ liệu
- Yêu cầu thiết lập cơ sở dữ liệu
- Test tự động - giải thích và tổng quan
- Các công cụ test được sử sụng, bao gồm các version, bản vá lỗi,...v.v
- Các qui trình bảo trì và quản lý version của test script/test code
- Theo dõi và giải quyết vấn đề - Các công cụ và qui trình
- Các thước đo về test sản phẩm được sử dụng
- Báo cáo các yêu cầu và khả năng giao test
- Điều kiện đầu vào và đầu ra của phần mềm
- Giai đoạn và điều kiện test ban đầu
- Điều kiện dừng test và test lại
- Sự bố trí nhân sự
- Những người cần training trước khi tham gia
- Nơi test
- Các tổ chức test bên ngoài sẽ sử dụng và mục đích, trách nhiệm, khả năng hoàn thành, người liên hệ và các vấn đề hợp tác của họ
- Các vấn đề độc quyền thích hợp, phân loại, bảo mật và bản quyền.
- Các vấn đề mở
- Phụ lục - bảng chú giải, các từ viết tắt, ...v.v...
2. Các bước cơ bản để lập test plan
- Xác định yêu cầu kiểm tra.
- Khảo sát rủi ro.
- Xác định chiến lược kiểm tra.
- Xác định nhân lực, vật lực cần thiết.
- Lập kế hoạch chi tiết.
- Tổng hợp và đưa ra kế hoạch kiểm tra.
- Xem xét các kế hoạch kiểm tra.
3. Nội dung cơ bản của một test plan
3.1. Chiến lược kiểm tra
- Chiến lược kiểm tra đưa ra phương pháp tiếp cận để kiểm tra mục tiêu.
- Chiến lược kiểm tra bao gồm các kỹ thuật được áp dụng và điều kiện để biết khi nào việc kiểm tra hoàn thành.
- Mô tả các kiểu kiểm tra dùng trong dự án.
- Có thể liệt kê với mỗi kiểu kiểm tra tương ứng kiểm tra cho chức năng nào.
- Việc kiểm có thể dừng khi nào.
3.2. Các kỹ thuật kiểm tra: Mỗi kiểu kiểm tra phải bao gồm các đìều kiện:
- Kỹ thuật: Mô tả việc kiểm tra như thế nào, những gì sẽ được kiểm tra, các hoạt động chính được thực hiện trong quá trình kiểm tra và các phương pháp đánh giá kết quả.
- Điều kiện hoàn thành: Xác định chất lượng chương trình được chấp nhận và Thời điểm kiểm tra hoàn tất.
Các vấn đề đặc biệt: Các vấn đề gây ảnh hưởng đến việc kiểm tra
3.2.1. Functional testing - kiểm tra chức năng
- Function testing - kiểm tra chức năng
- User interface testing - kiểm tra giao diện người sử dụng
- Data & database integrity testing - kiểm tra DL & tích hợp DL
- Business cycle testing - kiểm tra chu trình nghiệp vụ
3.2.2. Performance testing - kiểm tra hiệu xuất
- Performance profiling
- Load testing
- Stress testing
- Volume testing
3.2.3. Security & Access control testing - kiểm tra bảo mật & kiểm soát truy cập
3.2.4. Regression testing – kiểm tra hồi quy
3.3. Môi trường kiểm tra:
Tuỳ vào mỗi giai đoạn Unit test, Intergration test, System test, acceptance test sẽ ứng với môi trường kiểm tra nhất định. Từ đó xác định các yếu tố để xây dựng môi trường kiểm tra, sử dụng như môi trường thật hay tạo môi trường giả lập gần giống với môi trường chạy thật của chương trình.
-
Khi test chạy chương trình bằng bản dịch hay chạy trên code. Thông thường, các giai đoạn System test, Acceptance test phải chạy trên bản dịch
-
Với CSDL thì thông thường, từ Intergration test, ta phải thiết lập CSDL riêng và thiết lập các thông số cho CSDL gần giống hoặc giống hệt như khi chương trình sẽ chạy thật.
-
Điều kiện về mạng: sẽ sử dụng mạng LAN hay Dial up… Thông thường, khi Unit test, có thể sử dụng mạng LAN nhưng khi System test trở đi thì nên sử dụng hệ thống đường truyền giống như hoặc gần giống như môi trường chạy thật.
-
Mô hình sẽ cài đặt chương trình test: số lượng máy chủ, máy trạm; việc chia tách các server, các máy trạm, việc cài đặt các domain … Thông thường, trong Unit test có thể sử dụng viếc thiết lập như khi lập trình, nhưng khi System test trở đi, phải chú ý thiết lập sao cho gần giống mô hình sẽ chạy trong thực tế nhất.
All rights reserved