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.
Giới thiệu về phương thức assertEqual()
của Python
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.