Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Python Unit Testing (Kiểm thử đơn vị) là gì?

Kiểm thử đơn vị (Unit testing) là gì?

Kiểm thử đơn vị là loại kiểm thử phần mềm nơi từng thành phần riêng lẻ của hệ thống được test. Đây là thực hành quan trọng cho lập trình viên, đảm bảo mỗi thành phần hoạt động đúng như mong đợi. Thường do dev thực hiện trong giai đoạn coding.

Unit testing giúp dễ dàng sửa lỗi vì dev biết chính xác thành phần nào gặp vấn đề.

Python Unit Testing

Python có gói tích hợp unittest để thực hiện unit testing. Unit testing làm code "chắc chắn hơn" vì dev dự đoán các trường hợp thất bại và test chống lại chúng. Dù có thể bỏ sót vài case, nhưng đa số sẽ được bao phủ.

Module unittest dùng bằng cách import:

import unittest

Ví dụ

Giả sử hàm tính diện tích hình vuông, file area.py:

def area(a):
    return (a*a)

Viết unit test file unit_test.py:

from area import *
import unittest
class Testarea(unittest.TestCase):
    def test_area(self):
        self.assertAlmostEqual(area(5), 25)
        self.assertAlmostEqual(area(3), 9)
        self.assertAlmostEqual(area(4), 16)

Phương thức assertAlmostEqual() gọi area() với input, tham số 2 là output kỳ vọng. Nếu khớp thì pass, ngược lại fail.

Chạy test từ command prompt:

python -m unittest unit_test.py

Kết quả

.
----------------------------------------------------------------------
Ran 1 test in 0.000s
OK

Nếu code sai (ví dụ return a+a), test sẽ fail và chỉ ra lỗi. Sau khi sửa, chạy lại sẽ thấy OK.