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 assertEqual trong Python

Trong bài viết này, bạn sẽ học cách sử dụng phương thức assertEqual() trong Python để kiểm tra tính bằng nhau của hai giá trị. Phương thức assertEqual() là một phần quan trọng của mô-đun unittest và được sử dụng rộng rãi trong việc thực hiện kiểm thử đơn vị, đảm bảo rằng các hàm và phương thức hoạt động đúng như mong đợi. Bằng cách nắm vững cách sử dụng assertEqual(), bạn có thể viết các kiểm thử đơn giản và hiệu quả để nâng cao chất lượng mã nguồn của mình.

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

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

assertEqual() là một phương thức của lớp TestCase trong mô-đun unittest. Phương thức assertEqual() kiểm tra xem hai giá trị có bằng nhau hay không:

assertEqual(first, second, msg=None)

Nếu giá trị first không bằng giá trị second, kiểm thử sẽ thất bại.

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

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

Ví dụ về phương thức assertEqual()

Đầu tiên, tạo một mô-đun mới gọi là main.py và định nghĩa hàm add():

def add(a, b):
    return a + b

Thứ hai, tạo một mô-đun kiểm thử test_main.py để kiểm thử hàm add():

import unittest

from main import add

class TestMain(unittest.TestCase):
    def test_add(self):
        self.assertEqual(add(1, 2), 3)

Thứ ba, chạy kiểm thử:

python -m unittest test_main.py -v

Kết quả:

test_add (test_main.TestMain) ... ok

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

OK

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

Phương thức assertNotEqual() kiểm tra xem hai giá trị có không bằng nhau hay không:

assertNotEqual(first, second, msg=None)

Nếu first bằng second, kiểm thử sẽ thất bại. Ngược lại, nó sẽ thành công. Ví dụ:

import unittest

from main import add

class TestMain(unittest.TestCase):
    def test_add(self):
        self.assertEqual(add(1, 2), 3)

    def test_add_floats(self):
        self.assertNotEqual(add(0.2, 0.1), 0.3)

Chạy kiểm thử:

python -m unittest test_main.py -v

Kết quả:

test_add (test_main.TestMain) ... ok
test_add_floats (test_main.TestMain) ... ok

----------------------------------------------------------------------
Ran 2 tests in 0.001s

OK

Do 0.2 + 0.1 trả về 0.30000000000000004, nó không bằng 0.3. Do đó, kiểm thử sau sẽ thành công:

self.assertNotEqual(add(0.2, 0.1), 0.3)

Kết bài

Trong bài viết này,mình đã tìm hiểu cách sử dụng hai phương thức assert quan trọng trong Python unittest: assertEqual() để kiểm tra tính bằng nhau của hai giá trị và assertNotEqual() để kiểm tra tính khác nhau của hai giá trị. Những phương thức này là các công cụ mạnh mẽ giúp xác nhận tính chính xác của mã trong quá trình kiểm thử đơn vị. Hãy tiếp tục tìm hiểu và áp dụng chúng trong các dự án của bạn để đảm bảo chất lượng mã và tính ổn định của ứng dụng.

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