[ Pytest-cov ] [ Better ] Tạo 1 báo cáo và nhiều báo cáo

Avatar admin | July 5, 2024

Pytest-cov là một trình mở rộng của pytest bạn có thể xem chi tiết bên dưới

Tạo 1 báo cáo và nhiều báo cáo
Tạo 1 báo cáo và nhiều báo cáo

Pytest-cov tạo file báo cáo bất kì

pytest cov tao 1 bao cao va nhieu bao cao 4

Pytest-cov là một trình mở rộng của pytest, bạn có thể tạo báo cáo coverage cho module của mình bằng cách sử dụng pytest với pytest-cov như lệnh bạn đã đề cập.
Đây là các bước để thực hiện điều đó:

  1. Cài đặt pytest-cov: Đầu tiên, bạn cần cài đặt pytest-cov nếu chưa có. Bạn có thể cài đặt bằng pip:
    pip install pytest-cov
    
  2. Chạy lệnh pytest với coverage: Sử dụng lệnh bạn đã đề cập để chạy pytest và tạo báo cáo coverage:
    pytest --cov=my_module --cov-report=html test_my_module.py
    
    –cov=my_module: Tạo báo cáo coverage cho module my_module.–cov-report=html: Tạo báo cáo coverage dưới dạng HTML.test_my_module.py: Đây là file test của bạn.
  3. –cov=my_module: Tạo báo cáo coverage cho module my_module.
  4. –cov-report=html: Tạo báo cáo coverage dưới dạng HTML.
  5. test_my_module.py: Đây là file test của bạn.
  6. Xem báo cáo coverage: Sau khi chạy lệnh trên, một thư mục HTML sẽ được tạo ra (thường là htmlcov). Bạn có thể mở file index.html trong thư mục đó để xem báo cáo coverage trên trình duyệt.

Cài đặt pytest-cov: Đầu tiên, bạn cần cài đặt pytest-cov nếu chưa có.
Bạn có thể cài đặt bằng pip:

pip install pytest-cov

Chạy lệnh pytest với coverage: Sử dụng lệnh bạn đã đề cập để chạy pytest và tạo báo cáo coverage:

pytest --cov=my_module --cov-report=html test_my_module.py
  • –cov=my_module: Tạo báo cáo coverage cho module my_module.
  • –cov-report=html: Tạo báo cáo coverage dưới dạng HTML.
  • test_my_module.py: Đây là file test của bạn.

Xem báo cáo coverage: Sau khi chạy lệnh trên, một thư mục HTML sẽ được tạo ra (thường là htmlcov)

pytest cov tao 1 bao cao va nhieu bao cao 5
Tạo 1 báo cáo và nhiều báo cáo
Tạo 1 báo cáo và nhiều báo cáo

Hoặc nhanh hơn bạn chạy file .sh này nó tự làm cho bạn

Tạo 1 báo cáo và nhiều báo cáo
Tạo 1 báo cáo và nhiều báo cáo

Bạn có thể mở file index.html trong thư mục đó để xem báo cáo coverage trên trình duyệt.

pytest cov tao 1 bao cao va nhieu bao cao 5

Đây là một ví dụ cụ thể:

File hiển thị code Test:

file hiển thị code Test

Giả sử bạn có cấu trúc thư mục như sau:

my_project/
├── my_module/
│   ├── __init__.py
│   ├── module.py
├── tests/
│   ├── test_my_module.py

Bạn sẽ chạy lệnh sau từ thư mục gốc của dự án (my_project):

pytest --cov=my_module --cov-report=html tests/test_my_module.py

Sau khi chạy lệnh này, bạn sẽ thấy thư mục htmlcov xuất hiện trong thư mục gốc của dự án.
Bạn có thể mở file htmlcov/index.html để xem báo cáo coverage chi tiết.

Nếu bạn gặp vấn đề hoặc cần thêm thông tin, hãy cho tôi biết!

Báo cáo cho tất cả các test

Để tạo báo cáo coverage cho tất cả các bài test trong dự án của bạn, bạn có thể chạy pytest từ thư mục gốc của dự án mà không cần chỉ định file test cụ thể.
Dưới đây là các bước để thực hiện điều đó:

  1. Cài đặt pytest-cov (nếu chưa cài đặt):
    pip install pytest-cov
    
  2. Chạy pytest với coverage cho tất cả các test:
    pytest --cov=my_module --cov-report=html
    
    –cov=my_module: Tạo báo cáo coverage cho module my_module.–cov-report=html: Tạo báo cáo coverage dưới dạng HTML.Lệnh này sẽ tìm và chạy tất cả các bài test trong dự án của bạn, sau đó tạo báo cáo coverage.
  3. –cov=my_module: Tạo báo cáo coverage cho module my_module.
  4. –cov-report=html: Tạo báo cáo coverage dưới dạng HTML.

Cài đặt pytest-cov (nếu chưa cài đặt):

pip install pytest-cov

Chạy pytest với coverage cho tất cả các test:

pytest --cov=my_module --cov-report=html
  • –cov=my_module: Tạo báo cáo coverage cho module my_module.
  • –cov-report=html: Tạo báo cáo coverage dưới dạng HTML.

Lệnh này sẽ tìm và chạy tất cả các bài test trong dự án của bạn, sau đó tạo báo cáo coverage.

Ví dụ, giả sử cấu trúc dự án của bạn như sau:

my_project/
├── my_module/
│   ├── __init__.py
│   ├── module.py
├── tests/
│   ├── test_module1.py
│   ├── test_module2.py

Bạn sẽ chạy lệnh sau từ thư mục gốc của dự án (my_project):

pytest --cov=my_module --cov-report=html

Sau khi chạy lệnh này, một thư mục htmlcov sẽ được tạo ra trong thư mục gốc của dự án.
Bạn có thể mở file htmlcov/index.html để xem báo cáo coverage chi tiết.

Tạo 1 báo cáo và nhiều báo cáo
Tạo 1 báo cáo và nhiều báo cáo
Tạo 1 báo cáo và nhiều báo cáo
giao diện

Nếu bạn muốn bao gồm toàn bộ mã nguồn trong báo cáo (ngay cả những dòng mã không được kiểm tra), bạn có thể sử dụng thêm tùy chọn –cov-branch:

pytest --cov=my_module --cov-report=html --cov-branch

Tạo 1 báo cáo và nhiều báo cáo
Tạo 1 báo cáo và nhiều báo cáo

Tùy chọn này sẽ hiển thị coverage chi tiết hơn, bao gồm cả thông tin về các nhánh của mã nguồn

Hãy thử và cho tôi biết nếu bạn cần hỗ trợ thêm!

#Mtips5s #Contact

Fanpage: https://www.facebook.com/mtipscoder

Group trao đổi, chia sẻ: https://www.facebook.com/groups/mtipscoder

Website: https://mtips5s.com

Youtube: https://mtips5s.com

Twitter(X): @takagiks99

Instagram: @khuongkara

Threads: @khuongkara

Google Maps: @khuongkara

#Base Code #Souce Code

Bộ công cụ My Self: @tools.mtips5s.com

Github: @github

Npm: @npm

Docker: @docker

Chúc các bạn thành công!


Written by admin


Comments

This post currently has no responses.

Leave a Reply