Chuyển đến nội dung chính

KIỂM THỬ PHẦN MỀM


TỔNG QUAN
Kiểm thử phần mềm (KTPM) là một hoạt động nhằm tìm ra lỗi của một phần mềm đảm bảo phần mềm đáp ứng yêu cầu và chất lượng mà khác hàng và nhà phát triển để ra.
Kiểm thử phần mềm không đảm bảo phần hết lỗi mà chỉ hạn chế lỗi của phần mềm.
Trong các giai đoạn phát triển phần mềm thì KTPM thực hiện càng sớm thì chi phí phát triển phần mềm càng thấp.
NGUYÊN TẮC KTPM 
Kiểm thử và chỉ ra lỗi : kiểm thử cho thấy phần mềm đang có lỗi mà không xác định được chính xác lỗiNhằm giảm xác xuất lỗi chưa nhận trong phần mềm.
Kiểm thử ưu tiên: thực hiện kiểm thử ở các thành phần quan trọng có mức độ ưu tiên cao.
Kiểm thử sớm: Việc thực hiện kiểm thử càng sớm càng tốt cho quá trình phát triển phần mềm.
Phân loại lỗi: Việc kiểm thử thực hiện cân bằng và tập trung vào mật độ các lỗi trong ̣ kiến nhằm phát
hiện các lỗi trong thành phần của phần mềm
Có 3 nguyên lý quan trọng sau:
- Nguyên tắc ̉ gián: chỗ nào có một vài lỗi thì xung quang đó sẽ có nhiều lỗi.
- Nguyên tắc 80/20: thông thường 20% chức năng quan trọng sẽ gây ra 80% lỗi
- Nguyên tắc ưu tiên: Phân tích và đặt chế độ ưu tiên để quyết định tập trung kiểm thử những thành phần
quan trọng.
Nghịch lý thuốc trừ sâu: Thay đổi thường xuyên cách kiểm tra, thực hiện nhiều test case khác nhau, đa dạng trong phương pháp tiếp cận và kiểm thử.( ở đây giải thích thêm cho mọi người rõ hơn: khi kiểm thử tester thường test về 1 phần nào đó rất kỹ nhưng lại bỏ quên những phần khác như khi xịt thuốc sâu chỉ lo xịt trên bề mặt lá mà quên đi phần dưới của lá -> xóa lỗi, không đảm bảo chất lượng phần mềm-> để tránh việc này thì các tester phải lập ra kế hoạch kiểm thử rõ ràng, viết test case đầy đủ và tiếp cận với các phương pháp như top-down, bottom –up, smoking…)
Kiểm thử trong bối cảnh độc lập: việc kiểm thử nên thực hiện trong nhiều bối cảnh, ngữ cảnh độc lập
Ngoài ra: Kiểm thử nên bao gồm trường hợp hợp lệ và không hợp lệ, phân tích các lỗi tìm ra được nhằm áp
dụng các phương pháp kiểm thử thích hơp hơn.
CHIẾN LƯỢC KIỂM THỬ
1.Nguyên lý thiết kế và kiểm thử phần mềm:
- Tất cả kiểm thử phải có thể mô tả theo các yêu cầu của khách hàng
- Các kiểm thử phải được lập kế hoạch từ lâu trước khi tiến hành
- Kiểm thử cần bắt đầu thừ phạm vi nhỏ  và quá trình hướng đến phạm vi rộng
- Cần có nhóm độc lập thứ 3 thực hiện việc kiểm thử
 - Một lập trình viên nên tránh việc cố gắng kiểm thử chương trình của mình
 - Quá trình kiểm thử cần xác định đầy đủ các trường hợp của kiểm thử
2.   Tổ chức kiểm thử:
- Kiểm thử đơn vị
- Kiểm thử tích hợp
- Kiểm thử tính hơp lệ
- Kiểm thử hệ thống
CÁC GIAI ĐOẠN KIỂM THỬ
Lập kế hoạch kiểm thử
Thiết kế kiểm thử
Chuẩn bị môi trưởng kiểm thử
Thực hiện kiểm thử, theo dõi và xử lý lỗi
Thống kê báo báo kết quả
CẤP ĐỘ KIỂM THỬ
Có 4 cấp độ kiểm thử:
1. Unit Test: là kiểm thử các chức năng đơn giản có kích thước nhỏ của phần mềm
2. Integration Test: kiểm thử tích hợp các thành phần
- Kiểm thử cấu trúc
- Kiểm thử chức năng
- Kiểm thử hiệu năng
- Kiểm thử khả năng chịu tải
3. System Test: là kiểm thử mức độ hệ thống
 - Kiểm thử chúc năng
- Kiểm thử hiệu năng
 - Kiểm thử khả năng chịu tải
- Kiểm thử cấu hình
- Kiểm thử bảo mật
- Kiểm thử khả năng phục hồi
4. Acceptance Test: thường do khách hàng hoặc bên độc lập thứ 3 thực hiện
XÂY DỰNG TEST CASE
1.Xây dựng test case và vai trò của nó: xây dựng test case là quá trình xây là quá trình cấu thành các phương
pháp kiểm tra để phát hiện ra các sai sót, lỗi, khuyết điểm của phần mềm. Nhằm tạo ra những trường hợp
thử nhiệm tốt nhất, bao phủ tất cả các trường hợp, tăng khả năng tìm ra lỗi đồng thời tiết kiệm chi phí, thời
gian và nhân lực.
2.Quy trình xây dựng test case: bắt đầu bằng việc phát triển các cuộc thử nghiệp hộp trắng sau đó bổ xung
bằng các phương pháp hộp đen.
- Hộp trắng: gồm các phương pháp                  -Hộp đen: gồm các phương pháp
+Bao phủ câu lệnh                                           +Phân lớp tương đương
+Bao phủ quyết định                                        +Phân tích giá trị biên
+Bao phủ điều kiện                                          +Đồ thị nguyên nhân kết quả
+Bao phủ điều kiện – quyết định                      +Đoán lỗi
+Bao phủ  đa điều kiện

Nhận xét

Bài đăng phổ biến từ blog này

3Q6S - Tiêu chuẩn chất lượng công ty nhật

+  Ý nghĩa của 3Q6S -          Quality company: công ty tốt -          Quality worker: nhân viên tốt -          Quality Products : sản phẩm tốt -          Seiri : sắp xếp gọn gàng -          Seiton: đặt ngăn nắp, đúng chỗ -          Seiketsu : tinh khiết, sáng sủa -          Seisou: quét dọn sạch sẽ -          Saho : tác phong, hành động đúng -          Shitsuke : kỷ luật, nề nếp     – Lấy các chữ đầu của các mục trên để gọi là 3Q6S.        * Sắp xếp gọn gàng bao gồm ý nghĩa “Phân chia những vật cần thiết và không cần thiết, những vật không cần thiết không đặt ở nơi làm việc...

Tổng quan về solfware testing

Chương 1: Tổng quan về test phần mềm         1.1 Các giai đoạn test         1.2 Định nghĩa về test         1.3 Mục tiêu của test         1.4 Vai trò và nhiệm vụ của Tester. Chương 2: Những yêu cầu cần thiết khi thực hiện test        2.1 Ý nghĩa những tài liệu tester cần hiểu trước khi bắt đầu test        2.2 Hướng test cụ thể trong phần mềm Chương 3: Quy trình test       Sơ đồ tổng quát. Chương 4: Phương pháp test và kỹ thuật thiết kế testcase       4.1 Phương pháp test       4.2 Loại test       4.3 Test case Chương 5: Lỗi phổ biến trong phần mềm và cách Report Bug       5.1 13 lỗi phổ biến trong phần mềm (Bug type).       5.2 Report Bug Template. Chương 6: Test Plan và thế nào là Tester tốt A. TEST PLAN       I. Definitions:   ...

Các testcase cho màn hình login

I. Các thành phần thường có của màn hình login:     1. Logo     2. Username     3. Password     4. Remember Login     5. Submit button      ....... II. Các testcase: Check display when url is wrong Check validate of the code of url Check display of the login page when user enter url is true Check support Enter key for login button Check dislay when group is false Check login with correct username and password Check login with wrong username and password Check login with correct username and wrong password Check login with wrong username and correct password Check login with all empty fields Check login with correct username and empty password Check loginwith empty username and correct password Check when user checked [Remeber password] checkbox Check don't checked [Remeber password] checkbox Check unchecked [Remeber password] checkbox after checked [Remeber password] Check when user checked [Remebe...