×

Viết và chạy các bài kiểm thử tích hợp trong Python

Viết và chạy các bài kiểm thử tích hợp là một phần quan trọng trong quy trình phát triển phần mềm, đảm bảo rằng các module riêng lẻ hoạt động cùng nhau một cách chính xác. Trong bài viết này, chúng ta sẽ thảo luận về cách viết và chạy các bài kiểm thử tích hợp trong Python, sử dụng một số công cụ và thư viện phổ biến.

1. Chuẩn bị môi trường kiểm thử

Để viết và chạy các bài kiểm thử tích hợp trong Python, đầu tiên, chúng ta cần chuẩn bị môi trường kiểm thử. Các bước chuẩn bị bao gồm:

  • Cài đặt Python: Đảm bảo rằng Python đã được cài đặt trên hệ thống của bạn. Có thể tải Python từ trang chủ chính thức.
  • Cài đặt pytest: Đây là một thư viện mạnh mẽ và phổ biến để viết các bài kiểm thử trong Python. Có thể cài đặt pytest bằng lệnh pip install pytest.

2. Tạo các module cần kiểm thử

Giả sử chúng ta có hai module Python, module_a.pymodule_b.py, và cần kiểm thử tích hợp giữa chúng.

module_a.py

def add(x, y):
    return x + y

module_b.py

from module_a import add

def subtract_and_add(x, y, z):
    subtract_result = x - y
    return add(subtract_result, z)

3. Viết các bài kiểm thử tích hợp

Bây giờ chúng ta sẽ tạo một tệp kiểm thử mới, test_integration.py, để kiểm thử tích hợp giữa module_amodule_b.

test_integration.py

import pytest
from module_b import subtract_and_add

def test_subtract_and_add():
    result = subtract_and_add(5, 3, 2)
    assert result == 4, f"Expected 4 but got {result}"

if __name__ == "__main__":
    pytest.main()

4. Chạy các bài kiểm thử

Để chạy các bài kiểm thử, chúng ta sử dụng câu lệnh pytest trong terminal hoặc command prompt:

pytest test_integration.py

Kết quả của bài kiểm thử sẽ được hiển thị, cho biết bài kiểm thử đã thành công hay thất bại. Nếu có bất kỳ lỗi nào, pytest sẽ cung cấp thông tin chi tiết giúp phát hiện và sửa lỗi.

5. Kết hợp CI/CD

Kết hợp Continuous Integration/Continuous Deployment (CI/CD) trong quy trình kiểm thử giúp tự động hóa chạy các bài kiểm thử tích hợp mỗi khi có cập nhật mã nguồn. Các công cụ CI/CD phổ biến như Jenkins, GitHub Actions, và GitLab CI/CD hỗ trợ chạy pytest một cách tự động sau mỗi lần commit hoặc pull request.

Ví dụ cấu hình GitHub Actions:

Tạo một tệp .github/workflows/test.yml:

name: Python package

on: [push, pull_request]

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v2
    - name: Set up Python
      uses: actions/setup-python@v2
      with:
        python-version: 3.x
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install pytest
    - name: Run tests
      run: |
        pytest

Kết luận

Thông qua bài viết này, chúng ta đã biết cách viết và chạy các bài kiểm thử tích hợp trong Python, từ việc chuẩn bị môi trường, viết các bài kiểm thử đến việc tự động hóa quy trình kiểm thử. Kiểm thử tích hợp là yếu tố quan trọng đảm bảo chất lượng phần mềm và giúp phát hiện sớm các lỗi có thể xảy ra khi các module hoạt động cùng nhau.

Comments