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 tạo một widget nhập ngày và giờ sử dụng PyQt QDateTimeEdit

Cách tạo một widget nhập ngày và giờ sử dụng PyQt QDateTimeEdit

Cách tạo một widget nhập giờ sử dụng lớp PyQt QTimeEdit

Cách tạo một widget nhập giờ sử dụng lớp PyQt QTimeEdit

Cách tạo một widget nhập ngày sử dụng lớp PyQt QDateEdit

Cách tạo một widget nhập ngày sử dụng lớp PyQt QDateEdit

Cách sử dụng widget PyQt QSpinBox để tạo một spin box

Cách sử dụng widget PyQt QSpinBox để tạo một spin box

Sử dụng PyQt QComboBox để tạo Widget Combobox

Sử dụng PyQt QComboBox để tạo Widget Combobox

Cách sử dụng lớp PyQt QRadioButton

Cách sử dụng lớp PyQt QRadioButton

Cách sử dụng lớp QCheckBox trong PyQt

Cách sử dụng lớp QCheckBox trong PyQt

Cách sử dụng QFormLayout trong PyQt

Cách sử dụng QFormLayout trong PyQt

Cách sử dụng QGridLayout trong PyQt

Cách sử dụng QGridLayout trong PyQt

Cách sử dụng QVBoxLayout trong PyQt

Cách sử dụng QVBoxLayout trong PyQt

Cách sử dụng widget QLineEdit trong PyQt

Cách sử dụng widget QLineEdit trong PyQt

Cách sử dụng widget QPushButton của PyQt

Cách sử dụng widget QPushButton của PyQt

Cách sử dụng widget PyQt QLabel

Cách sử dụng widget PyQt QLabel

Tín hiệu và Khe (Signals & Slots) trong PyQt

Tín hiệu và Khe (Signals & Slots) trong PyQt

PyQt là gì? Tạo một chương trình

PyQt là gì? Tạo một chương trình "Hello World".

Ứng dụng System Tray với Tkinter

Ứng dụng System Tray với Tkinter

Cách hiển thị đồ thị từ thư viện Matplotlib trong Tkinter

Cách hiển thị đồ thị từ thư viện Matplotlib trong Tkinter

Cách sử dụng Validate trong Tkinter

Cách sử dụng Validate trong Tkinter

Cấu trúc MVC trong Tkinter

Cấu trúc MVC trong Tkinter

Cách sử dụng widget PhotoImage của Tkinter

Cách sử dụng widget PhotoImage của Tkinter

Top