Thử nghiệm tích cực và thử nghiệm tiêu cực với các ví dụ
⚡ Tóm tắt thông minh
Kiểm thử tích cực và kiểm thử tiêu cực cùng nhau quyết định xem phần mềm có chấp nhận những gì nó nên chấp nhận và từ chối những gì nó không nên từ chối hay không. Bài viết này giải thích cả hai phương pháp, các kỹ thuật đằng sau chúng, các ví dụ thực tiễn và các biện pháp giúp giảm thiểu lỗi phát sinh.

Kiểm thử phần mềm là quá trình xác minh và thẩm định một ứng dụng phần mềm để kiểm tra xem nó có hoạt động như mong đợi hay không. Mục đích là để tìm ra lỗi và cải thiện chất lượng sản phẩm. Có hai cách để kiểm thử phần mềm, đó là kiểm thử tích cực và kiểm thử tiêu cực.
Hai cách tiếp cận này trả lời hai câu hỏi trái ngược nhau: liệu ứng dụng có hoạt động khi mọi thứ diễn ra suôn sẻ, và liệu nó có duy trì ổn định khi xảy ra sự cố?
Kết quả xét nghiệm dương tính là gì?
Thử nghiệm tích cực Kiểm thử là một loại kiểm thử được thực hiện trên một ứng dụng phần mềm bằng cách cung cấp các tập dữ liệu hợp lệ làm đầu vào. Nó kiểm tra xem ứng dụng phần mềm có hoạt động như mong đợi với các đầu vào tích cực hay không.
Kiểm thử tích cực được thực hiện để kiểm tra xem ứng dụng phần mềm có hoạt động đúng như mong đợi hay không. Do đó, nó còn được gọi là kiểm thử đường dẫn thành công.
Ví dụ, hãy xem hộp văn bản số được hiển thị bên dưới.
Có một hộp văn bản trong ứng dụng chỉ có thể chấp nhận số. Việc nhập các giá trị lên đến 99999 sẽ được hệ thống chấp nhận và bất kỳ giá trị nào khác ngoài giá trị này sẽ không được chấp nhận. Để thực hiện kiểm tra tích cực, hãy đặt các giá trị đầu vào hợp lệ từ 0 đến 99999 và kiểm tra xem hệ thống có chấp nhận các giá trị đó không.
Thử nghiệm tiêu cực là gì?
Kiểm tra tiêu cực Kiểm thử là một phương pháp kiểm thử được thực hiện trên ứng dụng phần mềm bằng cách cung cấp các tập dữ liệu không hợp lệ hoặc không phù hợp làm đầu vào. Nó kiểm tra xem ứng dụng phần mềm có hoạt động như mong đợi khi nhận được các đầu vào tiêu cực hoặc không mong muốn từ người dùng hay không.
Mục đích của kiểm thử tiêu cực là để đảm bảo ứng dụng phần mềm không bị lỗi và vẫn hoạt động ổn định khi nhận dữ liệu đầu vào không hợp lệ. Do đó, nó còn được gọi là kiểm thử đường dẫn lỗi hoặc kiểm thử sự cố.
Ví dụ, hãy xem xét trường dữ liệu tương tự nhận các ký tự thay vì chữ số.
Kiểm tra phủ định có thể được thực hiện bằng cách nhập các ký tự từ A đến Z hoặc từ a đến z. Hệ thống phần mềm không được chấp nhận các giá trị, nếu không nó sẽ đưa ra thông báo lỗi cho những dữ liệu đầu vào không hợp lệ này.
Trong cả hai loại thử nghiệm, cần xem xét những điều sau:
- Dữ liệu đầu vào
- Một hành động cần được thực hiện
- Kết quả đầu ra
Kết quả xét nghiệm dương tính so với kết quả xét nghiệm âm tính: Những điểm khác biệt chính
Cả hai phương pháp đều có chung một điểm. trường hợp thử nghiệm Cấu trúc. Sự khác biệt nằm ở dữ liệu đầu vào bạn cung cấp và ở điều mà kết quả đạt yêu cầu chứng minh.
| Tham số | Thử nghiệm tích cực | Kiểm tra tiêu cực |
|---|---|---|
| Còn được biết là | Chúc bạn kiểm thử thành công! | Kiểm tra đường dẫn lỗi hoặc lỗi |
| Đầu vào được sử dụng | Dữ liệu hợp lệ, đúng như mong đợi | Dữ liệu không hợp lệ, cực đoan hoặc không mong đợi |
| Mục tiêu | Xác nhận tính năng này hoạt động đúng như mong đợi. | Xác nhận rằng tính năng này từ chối những gì nó không nên từ chối. |
| Kết quả dự kiến | Luồng quy trình hoàn tất thành công | Một lỗi rõ ràng xuất hiện nhưng hệ thống vẫn ổn định. |
| Xử lý lỗi | Không phải là trọng tâm | Toàn bộ trọng tâm |
| Toàn Diện | Hẹp, tuân theo thông số kỹ thuật. | Rộng hơn, nó khám phá mọi thứ nằm ngoài phạm vi quy định. |
| Rủi ro thường gặp nếu bỏ qua | Các tính năng cốt lõi bị lỗi khi xuất xưởng | Sự cố và lỗ hổng bảo mật ảnh hưởng đến quá trình sản xuất. |
Kết quả kiểm tra dương tính thất bại cho thấy chức năng bị hỏng. Kết quả kiểm tra âm tính thất bại cho thấy có bộ phận bảo vệ bị thiếu, việc sửa chữa sẽ tốn kém hơn nhiều một khi người dùng đã phát hiện ra.
Các kỹ thuật xét nghiệm được sử dụng để xác định kết quả dương tính và âm tính.
Trên thực tế, hai kỹ thuật thiết kế đầu vào kinh điển tạo ra cả trường hợp tích cực và tiêu cực từ cùng một yêu cầu:
- Phân tích giá trị biên
- Phân vùng tương đương
Phân tích giá trị biên
Đây là một trong những kỹ thuật kiểm thử phần mềm trong đó các ca kiểm thử được thiết kế để bao gồm các giá trị ở ranh giới. Nếu dữ liệu đầu vào được sử dụng trong giới hạn giá trị biên thì đó được gọi là Kiểm tra tích cực. Nếu dữ liệu đầu vào được chọn nằm ngoài giới hạn giá trị biên thì đó được gọi là Kiểm thử âm tính.
Ví dụ, hãy xem phạm vi được chấp nhận được minh họa bên dưới.
Một hệ thống có thể chấp nhận các số từ 0 đến 10 giá trị số. Tất cả các số khác là giá trị không hợp lệ. Theo kỹ thuật này, các giá trị biên -1,0,1 và 9,10,11 sẽ được kiểm tra.
Phân vùng tương đương
Đây là một kiểm thử phần mềm kỹ thuật chia dữ liệu đầu vào thành nhiều phân vùng. Các giá trị từ mỗi phân vùng phải được kiểm tra ít nhất một lần. Các phân vùng có giá trị hợp lệ được sử dụng để Kiểm tra Tích cực. Trong khi các phân vùng có giá trị không hợp lệ được sử dụng để kiểm tra âm tính.
Ví dụ, hãy nghiên cứu hai phân vùng được hiển thị bên dưới.
Các giá trị số từ 0 đến 10 có thể được chia thành hai (hoặc ba) phần. Trong trường hợp của chúng ta, chúng ta có hai phần: từ -10 đến -1 và từ 0 đến 10. Có thể lấy các giá trị mẫu (5 và -5) từ mỗi phần để kiểm tra các trường hợp. Xem thêm phân vùng tương đương và phân tích giá trị biên Xem thêm các ví dụ minh họa trong bài học.
Cách thực hiện xét nghiệm dương tính và âm tính
Chuỗi quy trình sau đây biến một yêu cầu thành một tập hợp cân bằng các trường hợp tích cực và tiêu cực.
- Hãy đọc kỹ các yêu cầu về giới hạn. Ghi chú lại mọi định dạng, phạm vi và trường bắt buộc được chấp nhận. Bất cứ điều gì được quy định cho phép đều được coi là trường hợp tích cực, và bất cứ điều gì bị loại trừ đều được coi là trường hợp tiêu cực.
- Hãy viết luận điểm khẳng định trước. Cung cấp dữ liệu hợp lệ, thực hiện hành động và ghi lại kết quả thành công dự kiến làm cơ sở so sánh.
- Từ các giới hạn tương tự, hãy suy ra các trường hợp tiêu cực. Sử dụng phân tích giá trị biên và phân vùng tương đương để tạo ra các trường trống, kiểu dữ liệu sai và số nằm ngoài phạm vi cho phép.
- Thêm đầu vào mang tính thù địch. Bao gồm SQL injection chuỗi ký tự, mã thông báo hết hạn và tải trọng API bị lỗi. kiểm tra bảo mật Các lỗ hổng xuất hiện sớm.
- Mở rộng sang cả các kiểm tra không liên quan đến chức năng. A thử tải Số lượng người dùng được hỗ trợ là dương, trong khi đó... kiểm tra căng thẳng Vượt quá giới hạn đó là trường hợp phủ định tương ứng.
- Chọn phạm vi xử lý cho từng vụ án. Tránh để các trường hợp âm tính xảy ra. kiểm tra khói và sự tỉnh táo, đó là các cổng dương nhanh, và vận hành chúng trong chức năng và kiểm tra hồi quy các chu kỳ.
Giao dịch rút tiền ATM hiển thị thông tin ghép nối. Trường hợp thành công: nhập đúng mã PIN và số tiền hợp lệ, do đó bạn sẽ nhận được tiền mặt và biên lai. Trường hợp thất bại: nhập sai mã PIN và nhận được thông báo từ chối, sau đó là thẻ bị khóa.
Các biện pháp tốt nhất để giữ cân bằng
- Hãy viết ít nhất hai trường hợp cho mỗi yêu cầu, một trường hợp tích cực và một trường hợp tiêu cực, trước khi bắt đầu quá trình phát triển.
- Ưu tiên xử lý các trường hợp lỗi theo mức độ ảnh hưởng, sao cho các lỗi tiêm dữ liệu và thanh toán được ưu tiên trước các lỗi nhập liệu về giao diện.
- Hãy nêu rõ thông báo lỗi, chứ không chỉ đơn thuần là thông báo thao tác thất bại, vì những thông báo mơ hồ cũng là một lỗi.
- Hãy chừa chỗ cho thử nghiệm thăm dòvà ghi lại các phát hiện thông qua... quy trình quản lý khuyết tật.
⚠️ Cảnh báo: Tuyệt đối không nên chạy các trường hợp tiêu cực trên môi trường sản xuất đang hoạt động. Mục đích của việc này là để gây ra lỗi, và việc cố tình làm sập hệ thống sẽ ảnh hưởng đến người dùng thực và dữ liệu thực.

.png)
.png)
.png)
.png)