PYTHON UNIT TESTING
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Thông báo: Download 4 khóa học Python từ cơ bản đến nâng cao tại đây.

Phương thức assertIsNone() trong Python

Trong kiểm thử phần mềm, việc đảm bảo rằng các giá trị và trạng thái của biến được xác định chính xác là vô cùng quan trọng. Python cung cấp một loạt các phương thức kiểm thử trong mô-đun unittest để hỗ trợ các nhà phát triển trong việc này. Một trong số đó là phương thức assertIsNone(), giúp kiểm tra xem một biến có giá trị None hay không. Trong bài viết này, mình sẽ tìm hiểu cách sử dụng phương thức assertIsNone() để nâng cao hiệu quả kiểm thử và đảm bảo tính chính xác của mã nguồn.

test php

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Giới thiệu về phương thức assertIsNone() của Python

Ph C6 B0 C6 A1ng 20th E1 BB A9c 20assert   20trong 20Python 20 8  png

Phương thức assertIsNone() là một phương thức của lớp TestCase trong mô-đun unittest. Phương thức assertIsNone() kiểm tra xem một biểu thức có phải là None hay không:

assertIsNone(expr, msg=None)

Nếu exprNone, bài kiểm tra sẽ thành công. Ngược lại, bài kiểm tra sẽ thất bại.

Tham số msg là tùy chọn. Nó sẽ được hiển thị trong kết quả kiểm tra nếu bài kiểm tra thất bại.

Bài viết này được đăng tại [free tuts .net]

Ví dụ về phương thức assertIsNone() của Python

Hãy cùng xem một số ví dụ về cách sử dụng phương thức assertIsNone().

Sử dụng assertIsNone() với một trường hợp thành công

Ví dụ sau sử dụng assertIsNone() để kiểm tra xem biến message có phải là None hay không:

import unittest

class TestNone(unittest.TestCase):
    def test_variable_none(self):
        message = None
        self.assertIsNone(message)

Chạy kiểm tra:

python -m unittest -v

Kết quả:

test_variable_none (test_none.TestNone) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.000s

Sử dụng assertIsNone() với một trường hợp thất bại

Ví dụ sau sử dụng phương thức assertIsNone() để kiểm tra xem biến message có phải là None hay không:

import unittest

class TestNone(unittest.TestCase):
    def test_variable_not_none(self):
        message = 'Hello'
        self.assertIsNone(message)

Chạy kiểm tra:

python -m unittest -v

Kết quả:

test_variable_not_none (test_none.TestNone) ... FAIL

======================================================================
FAIL: test_variable_not_none (test_none.TestNone)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\python-unit-testing\test_none.py", line 7, in test_variable_not_none
    self.assertIsNone(message)
AssertionError: 'Hello' is not None

----------------------------------------------------------------------
Ran 1 test in 0.001s

FAILED (failures=1)

message'Hello', nó không phải là None. Do đó, bài kiểm tra thất bại.

Sử dụng assertIsNone() với một trường hợp thất bại và thông báo lỗi

Ví dụ sau sử dụng assertIsNone() để kiểm tra xem biến message có phải là None hay không và hiển thị thông báo lỗi khi kiểm tra thất bại:

import unittest

class TestNone(unittest.TestCase):
    def test_variable_not_none(self):
        message = 'Hello'
        self.assertIsNone(
            message,
            f'The message is "{message}" so it is not None.'
        )

Chạy kiểm tra:

python -m unittest -v

Kết quả:

test_variable_not_none (test_none.TestNone) ... FAIL

======================================================================
FAIL: test_variable_not_none (test_none.TestNone)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\python-unit-testing\test_none.py", line 7, in test_variable_not_none
    self.assertIsNone(
AssertionError: 'Hello' is not None : The message is "Hello" so it is not None.

----------------------------------------------------------------------
Ran 1 test in 0.001s

FAILED (failures=1)

Phương thức assertIsNotNone() của Python

Phương thức assertIsNotNone() là đối lập của phương thức assertIsNone(). Phương thức assertIsNotNone() kiểm tra xem một biến có phải là None hay không.

assertIsNotNone(expr, msg=None)

Bài kiểm tra sẽ thành công nếu expr không phải là None, ngược lại sẽ thất bại. Ví dụ:

import unittest

class TestNone(unittest.TestCase):
    def test_variable_is_not_none(self):
        message = 'Bye'
        self.assertIsNotNone(message)

Chạy kiểm tra:

python -m unittest -v

Kết quả:

test_variable_is_not_none (test_not_none.TestNone) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.001s

OK

Kết bài

Trong kiểm thử phần mềm, việc sử dụng các phương thức assert như assertIsNone()assertIsNotNone() giúp đảm bảo tính chính xác và tin cậy của mã nguồn. Bằng cách kiểm tra xem các biến có giá trị None hay không, chúng ta có thể phát hiện và xử lý kịp thời các lỗi tiềm ẩn. Hiểu rõ và áp dụng đúng các phương thức này không chỉ nâng cao chất lượng mã nguồn mà còn giúp các nhà phát triển duy trì và cải thiện phần mềm một cách hiệu quả. Việc sử dụng unittest một cách thành thạo sẽ là công cụ đắc lực trong việc đảm bảo chất lượng phần mềm.

Cùng chuyên mục:

Cách thêm Progress Bar trong Python với chỉ một dòng Code

Cách thêm Progress Bar trong Python với chỉ một dòng Code

Toán tử Walrus Operator- Tính năng mới trong Python 3.8

Toán tử Walrus Operator- Tính năng mới trong Python 3.8

Cách nạp dữ liệu Machine Learning từ File trong Python

Cách nạp dữ liệu Machine Learning từ File trong Python

Hướng dẫn sử dụng Google Sheets API với Python

Hướng dẫn sử dụng Google Sheets API với Python

Xây dựng  web Python tự động hóa Twitter | Flask, Heroku, Twitter API & Google Sheets API

Xây dựng web Python tự động hóa Twitter | Flask, Heroku, Twitter API & Google Sheets API

Xây dựng Web Machine Learning đẹp mắt với Streamlit và Scikit-learn trong Python

Xây dựng Web Machine Learning đẹp mắt với Streamlit và Scikit-learn trong Python

Hướng dẫn tạo Chatbot đơn giản bằng PyTorch

Hướng dẫn tạo Chatbot đơn giản bằng PyTorch

11 mẹo và thủ thuật để viết Code Python hiệu quả hơn

11 mẹo và thủ thuật để viết Code Python hiệu quả hơn

Hướng dẫn làm ứng dụng TODO với Flask dành cho người mới bắt đầu trong Python

Hướng dẫn làm ứng dụng TODO với Flask dành cho người mới bắt đầu trong Python

Hướng dẫn viết Snake Game bằng Python

Hướng dẫn viết Snake Game bằng Python

Cách sử dụng chế độ interactive trong Python

Cách sử dụng chế độ interactive trong Python

Cách sử dụng Python Debugger với hàm breakpoint()

Cách sử dụng Python Debugger với hàm breakpoint()

Xây dựng ứng dụng Web Style Transfer với PyTorch và Streamlit

Xây dựng ứng dụng Web Style Transfer với PyTorch và Streamlit

Cách cài đặt Jupyter Notebook trong môi trường Conda và thêm Kernel

Cách cài đặt Jupyter Notebook trong môi trường Conda và thêm Kernel

Hướng dẫn xây dựng ứng dụng dự đoán giá cổ phiếu bằng Python

Hướng dẫn xây dựng ứng dụng dự đoán giá cổ phiếu bằng Python

Hướng dẫn tạo ứng dụng AI hội thoại với NVIDIA Jarvis trong Python

Hướng dẫn tạo ứng dụng AI hội thoại với NVIDIA Jarvis trong Python

Hỗ trợ Async trong Django 3.1

Hỗ trợ Async trong Django 3.1

8 mẹo tái cấu trúc Python giúp mã sạch hơn và Pythonic

8 mẹo tái cấu trúc Python giúp mã sạch hơn và Pythonic

Ý nghĩa của if __name__ ==

Ý nghĩa của if __name__ == "__main__" trong Python

Cách xóa phần tử trong danh sách Python

Cách xóa phần tử trong danh sách Python

Top