Categories

Subscribe Now

* You will receive the latest news and updates on your favorite celebrities!

Automation Series

Kiểm thử hộp đen-BlackBox Testing
Methods

Kiểm thử hộp đen-BlackBox Testing 

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.

  • Nó còn được gọi là kiểm thử hướng dữ liệu hay là kiểm thử hướng in/out.
  • Người kiểm thử nên xây dựng các nhóm giá trị đầu vào mà sẽ thực thi đầy đủ tất cả các yêu cầu chức năng của chương trình.
  • Cách tiếp cận của các tester đối với hệ thống là không dùng bất kỳ một kiến thức về cấu trúc lập trình bên trong hệ thống, xem hệ thống là một cấu trúc hoàn chỉnh, không thể can thiệp vào bên trong.

Black Box Testing chủ yếu là được thực hiện trong Function test và System test.

Phương pháp này được đặt tên như vậy bởi vì các chương trình phần mềm, trong con mắt của các tester, giống như một hộp đen; bên trong mà người ta không thể nhìn thấy. Phương pháp này cố gắng tìm ra các lỗi trong các loại sau:

  • Chức năng không chính xác hoặc thiếu.
  • Lỗi giao diện.
  • Lỗi trong cấu trúc dữ liệu hoặc truy cập cơ sở dữ liệu bên ngoài.
  • Hành vi hoặc hiệu suất lỗi.
  • Khởi tạo và chấm dứt các lỗi.

Mọi kỹ thuật nào cũng có ưu điểm và nhược điểm của nó. Các hệ thống thường phải được sử dụng nhiều phương pháp kiểm thử khác nhau để đảm bảo được chất lượng của hệ thống khi đến tay người dùng.

ƯU ĐIỂM

  • Các tester được thực hiện từ quan điểm của người dùng và sẽ giúp đỡ trong việc sáng tỏ sự chênh lệch về thông số kỹ thuật.
  • Các tester theo phương pháp black box không có “mối ràng buộc” nào với code, và nhận thức của một tester rất đơn giản: một source code có nhiều lỗi. Sử dụng nguyên tắc, “Hỏi và bạn sẽ nhận” các tester black box tìm được nhiều bug ở nơi mà các developer không tìm thấy.
  • Tester không cần phải biết ngôn ngữ lập trình hoặc làm thế nào các phần mềm đã được thực hiện.
  • Thiết kế kịch bản kiểm thử khá nhanh, ngay khi mà các yêu cầu chức năng được xác định.

NHƯỢC ĐIỂM

Người ta nói kiểm thử hộp đen ” giống như là đi trong bóng tối mà không có bóng đèn vậy “, bởi vì kiểm thử viên không biết các phần mềm được kiểm tra thực sự được xây dựng như thế nào. Đây là lý do mà một kiểm thử viên viết rất nhiều test case để kiểm tra một thứ gì đó mà đáng lẽ ra chỉ cần 1 ca kiểm thử là đủ, và/hoặc một số phần của phần mềm không được kiểm thử chút nào.

Vòng đời phát triển của kiểm thử hộp đen.

Kiểm thử hộp đen có chu kỳ sống riêng của nó được gọi là Vòng đời kiểm thử phần mềm ( STLC ) và nó liên quan đến mọi giai đoạn của Vòng đời phát triển phần mềm.

  • Requirement – Đây là giai đoạn ban đầu của SDLC và trong giai đoạn này các yêu cầu được thu thập. Kiểm thử phần mềm cũng tham gia vào giai đoạn này.
  • Test Planning & Analysis – Các loại thử nghiệm áp dụng cho dự án được xác định. Một kế hoạch thử nghiệm được tạo ra để xác định các rủi ro có thể xảy ra của dự án và giảm thiểu sự rủi ro của chúng.
  • Design – Trong giai đoạn này các trường hợp / tập lệnh thử nghiệm được tạo trên cơ sở các tài liệu yêu cầu phần mềm
  • Test Execution – Trong giai đoạn này chúng ta thực hiện các trường hợp thử nghiệm đã chuẩn bị.

Phương pháp kiểm thử hộp đen

Đoán lỗi: là một kỹ năng quan trọng của tester, thậm chí có thể gọi là nghệ thuật. Một kiệt tác của trực giác. Phương pháp này đặc biệt dựa vào kinh nghiệm và kiến thức của tester. Nhiều tester cố gắng đoán xem phần nào của hệ thống mà có khả năng ẩn chứa lỗi. Với phương pháp này, họ không cần một công cụ hay một kịch bản kiểm thử nào khi bắt đầu vào việc.

Kiểm thử dựa vào đồ thị nguyên nhân – kết quả (Cause Effect Graphing): là một kỹ thuật thiết kế kiểm thử phần mềm liên quan đến việc xác định các trường hợp (điều kiện đầu vào) và các hiệu ứng (điều kiện đầu ra). Vì các hệ thống hiện nay đều được phát triển trên nền tảng OOP, do đó, chúng ta có thể có được một đồ thị các đối tượng mà hệ thống định nghĩa và kết nối. Từ đồ thị này, chúng ta dễ dàng biết các mối quan hệ của những đối tượng mà hệ thống xử lý, từ đó sẽ cho chúng ta các kịch bản kiểm thử phù hợp.

Phân vùng tương đương (Equivalence Class): là một kỹ thuật kiểm thử phần mềm có liên quan đến phân chia các giá trị đầu vào thành các phân vùng hợp lệ và không hợp lệ, sau đó chúng ta sẽ viết ra các kịch bản kiểm thử cho từng phần, chọn giá trị đại diện từ mỗi phân vùng làm dữ liệu thử nghiệm.

  • Phân vùng tương đương: là kỹ thuật thực hiện test theo từng class đồng giá trị (tập hợp điều kiện cùng một thao tác).
  • Tập hợp giá trị input có cùng một kết quả xử lý, tập hợp thời gian có cùng một kết quả xử lý, tập hợp kết quả export được xử lý cùng một giá trị nhập.
  • Mục đích : Giảm đáng kể số lượng test case cần phải thiết kế vì với mỗi lớp tương đương ta chỉ cần test trên các phần tử đại diện.
  • Chọn tối thiểu một giá trị đại diện từ các class đồng giá trị để tiến hành test.

–> Nếu có lỗi xảy ra thì các giá trị khác trong class đồng giá trị cũng sẽ có lỗi giống nhau.

Phân tích giá trị biên (Boundary Value Analysis): là một kỹ thuật kiểm thử phần mềm có liên quan đến việc xác định biên (ranh giới) của điều kiện mô tả cho các giá trị đầu vào và chọn giá trị ở biên và bên cạnh giá trị biên làm dữ liệu kiểm thử. Phương pháp phân tích giá trị biên sẽ đưa ra các giá trị đặc biệt, bao gồm loại dữ liệu, giá trị lỗi, bên trong, bên ngoài biên giá trị, lớn nhất và nhỏ nhất.

Những kỹ sư nhiều kinh nghiệm chắc chắn đã từng gặp phải các lỗi của hệ thống ngay tại giá trị biên. Đó là lý do tại sao phân tích giá trị biên lại quan trọng khi kiểm thử hệ thống.

  • Test giá trị biên được thực hiện theo trình tự dưới đây:
  1. Tìm ra đường biên
  2. Quyết định giá trị biên
  3. Quyết định giá trị để test
  • Giá trị biên.
  • Dưới giá trị biên. (Nếu là class đồng giá trị)
  • Trên 1 giá trị biên. (Nếu là class đồng giá trị)

Sử dụng bảng quyết định (Decision Tables)

  • Là dùng bảng để hiển thị danh sách các thao tác phần mềm được quyết định trên các điều kiện khác nhau.
  • Decision table testing chú trọng vào nhiều điều kiện để thực hiện test.

Để tìm hiểu rõ hơn vể các kỹ thuật kiểm thử, hãy xem thêm tại link: CÁC KỸ THUẬT KIỂM THỬ

Related posts

Leave a Reply

Required fields are marked *

error: Content is protected !!