Get in touch
or send us a question?
CONTACT

Sự khác nhau giữa static testing(kiểm thử tĩnh) và dynamic testing (kiểm thử động)

  • Static testing và dymanic testing có cùng mục đích, như là cung cấp đánh giá về chất lượng của work product và xác định defect càng sớm càng tốt.
  • Hai phương pháp này bổ trợ cho nhau vì tìm thấy các defect khác nhau.
  • Điểm phân biệt chính là kiểm thử tĩnh tìm kiếm defect trong work product 1 cách trực tiếp còn kiểm thử động xác định các failures gây ra bởi defect khi chạy phần mềm.
  • Một defect có thể tồn tại trong work product 1 thời gian dài mà không gây ra failure
  • Kiểm thử tĩnh có thể tìm thấy defect mà tốn ít công sức hơn
  • Một điểm khác nhau nữa là kiểm thử tĩnh có thể được sử dụng để nâng cao tính nhất quán và chất lượng bên trong của work product, trong khi kiểm thử động thông thường tập trung vào hành vi bên ngoài của sản phẩm.
  • Khi so sánh với kiểm thử động, các loại defect đặc thù mà có thể tìm thấy và fix 1 cách dễ dàng và chi phí rẻ bao gồm:
    • Requirement defects (ví dụ: mâu thuẫn, dư thừa, không chính xác)
    • Design defects (thuật toán hoặc cấu trúc dữ liệu không hiệu quả)
    • Coding defects (các biến có giá trị không xác định, các biến được khai báo nhưng không sử dụng, code không thể truy cập, code trùng lặp)
    • Độ lệch so với tiêu chuẩn (ví dụ: thiếu tuân thủ các tiêu chuẩn code)
    • Thông số kĩ thuật giao diện không chính xác
    • Các lỗ hổng bảo mật (ví dụ: dễ tràn bộ nhớ đệm)
    • Các lỗ hổng hoặc không chính xác trong truy xuất nguồn gốc hoặc phạm vi bảo hiểm
  • Ngoài ra, hầu hết các loại maintainability defects chỉ có thể tìm thấy bởi kiểm thử tĩnh.
  • Tài liệu tham khảo: (Chương 3) https://astqb.org/assets/documents/CTFL-2018-Syllabus.pdf