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 assertTrue() trong Python

Trong bài viết này, bạn sẽ học cách sử dụng phương thức assertTrue() của Python để kiểm tra xem một biểu thức có đúng hay không và phương thức assertFalse() để kiểm tra xem một biểu thức có sai hay không.

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 assertTrue() của Python

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

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

assertTrue(expr, msg=None)

Nếu exprTrue, 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ếu bạn truyền tham số msg, nó sẽ được hiển thị khi bài kiểm tra thất bại.

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

Phương thức assertTrue() tương đương với biểu thức sau:

bool(expr) is True

Nó không tương đương với biểu thức sau:

expr is True

Trong thực tế, bạn nên sử dụng phương thức assertTrue() để kiểm tra giá trị boolean của một biến. Ngoài ra, bạn không nên sử dụng phương thức assertTrue() nếu có các phương thức cụ thể hơn.

Ví dụ, thay vì sử dụng phương thức assertTrue() cho trường hợp sau:

assertTrue(a == b)

bạn nên sử dụng phương thức assertEqual():

assertEqual(a, b)

Bởi vì phương thức assertEqual() cung cấp thông báo lỗi rõ ràng hơn trong trường hợp bài kiểm tra thất bại.

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

Ví dụ sau sử dụng phương thức assertTrue() để kiểm tra xem tất cả các ký tự trong chuỗi có phải là chữ số hay không:

import unittest

class TestBool(unittest.TestCase):
    def test_is_digit(self):
        str = '123'
        self.assertTrue(str.isdigit())

Chạy bài kiểm tra:

python -m unittest -v

Kết quả:

test_is_digit (test_bool.TestBool) ... ok

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

OK

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

Phương thức assertFalse() kiểm tra xem một biểu thức có sai hay không. Ví dụ:

import unittest

class TestBool(unittest.TestCase):
    def test_empty_string_is_digit(self):
        str = ''
        self.assertFalse(str.isdigit())

    def test_alpha_is_digit(self):
        str = 'a00'
        self.assertFalse(str.isdigit())

Chạy bài kiểm tra:

python -m unittest -v

Kết quả:

test_alpha_is_digit (test_bool.TestBool) ... ok
test_empty_string_is_digit (test_bool.TestBool) ... ok
test_is_digit (test_bool.TestBool) ... ok

----------------------------------------------------------------------
Ran 3 tests in 0.001s

OK

Kết bài

Trong kiểm thử đơn vị, việc sử dụng các phương thức như assertTrue()assertFalse() giúp đảm bảo rằng các biểu thức trong mã nguồn hoạt động như mong đợi. assertTrue() kiểm tra xem một biểu thức có đúng hay không, còn assertFalse() kiểm tra xem một biểu thức có sai hay không. Sử dụng đúng các phương thức này không chỉ giúp phát hiện lỗi trong mã nguồn mà còn làm cho thông báo lỗi rõ ràng và dễ hiểu hơn. Điều này giúp mình nhanh chóng xác định và sửa lỗi, đảm bảo chất lượng của phần mềm trước khi phát hành. Hãy tận dụng kiến thức của assertTrue()assertFalse() để viết các bài kiểm thử đơn vị hiệu quả và đáng tin cậy.

Cùng chuyên mục:

Sử dụng câu lệnh raise from trong Python

Sử dụng câu lệnh raise from trong Python

Ngoại lệ tùy chỉnh trong Python

Ngoại lệ tùy chỉnh trong Python

Ngoại lệ Raise trong Python

Ngoại lệ Raise trong Python

Tìm hiểu về các ngoại lệ trong Python

Tìm hiểu về các ngoại lệ trong Python

Tìm hiểu về decorator dataclass trong Python

Tìm hiểu về decorator dataclass trong Python

Ví dụ sử dụng metaclass trong Python

Ví dụ sử dụng metaclass trong Python

Lớp Metaclass trong Python

Lớp Metaclass trong Python

Tìm hiểu về Class Type trong Python

Tìm hiểu về Class Type trong Python

Phương thức __new__ trong Python

Phương thức __new__ trong Python

Phân biệt Data Descriptor và Non-data Descriptor trong Python

Phân biệt Data Descriptor và Non-data Descriptor trong Python

Mô tả Descriptors trong Python

Mô tả Descriptors trong Python

Tìm hiểu về các lớp mixin trong Python

Tìm hiểu về các lớp mixin trong Python

Đa kế thừa trong Python

Đa kế thừa trong Python

Nguyên tắc đảo ngược sự phụ thuộc trong Python

Nguyên tắc đảo ngược sự phụ thuộc trong Python

Interface Segregation Principle - ISP trong Python.

Interface Segregation Principle - ISP trong Python.

Nguyên tắc thay thế Liskov - LSP trong Python

Nguyên tắc thay thế Liskov - LSP trong Python

Nguyên tắc Đóng-Mở trong Python

Nguyên tắc Đóng-Mở trong Python

Single Responsibility Principle trong Python

Single Responsibility Principle trong Python

Cách sử dụng hàm Auto() của Python

Cách sử dụng hàm Auto() của Python

Tùy chỉnh và mở rộng lớp Enum trong Python

Tùy chỉnh và mở rộng lớp Enum trong Python

Top