diff --git a/.github/workflows/pytest.yml b/.github/workflows/pytest.yml
index 5d06a62..8f93d41 100644
--- a/.github/workflows/pytest.yml
+++ b/.github/workflows/pytest.yml
@@ -1,4 +1,3 @@
----
 # This workflow use pytest:
 #  - Install Python dependencies.
 #  - Run pytest for each of the supported Python versions ["3.8", "3.9", "3.10"]. 
@@ -9,10 +8,10 @@ name: Pytest.
 on:
   push:
     branches:
-      - main
+    - main
   pull_request:
     branches:
-      - '*'
+    - '*'
 
 concurrency:
   group: ${{ github.ref }}
@@ -27,17 +26,23 @@ jobs:
         python-version: ["3.11"]
 
     steps:
-      - uses: actions/checkout@v2
-      - name: Set up Python ${{ matrix.python-version }}
-        uses: actions/setup-python@v2
-        with:
-          python-version: ${{ matrix.python-version }}
-      - name: Install dependencies.
-        run: |
-          python -m pip install --upgrade pip
-          python -m pip install -r requirement.txt
-          python -m pip install -r tests/test-requirement.txt
-      - name: Runnning tests with pytest.
-        run: |
-          set -o pipefail
-          pytest -m "not docker"
+    - uses: actions/checkout@v2
+    - name: Set up Python ${{ matrix.python-version }}
+      uses: actions/setup-python@v2
+      with:
+        python-version: ${{ matrix.python-version }}
+    - name: Install dependencies.
+      run: |
+        python -m pip install --upgrade pip
+        python -m pip install -r requirement.txt
+        python -m pip install -r tests/test-requirement.txt
+    - name: Runnning tests with pytest.
+      run: |
+        set -o pipefail
+        pytest -m "not docker" --cov=./ --cov-report=xml:coverage.xml --cov-report=term-missing
+    - name: Upload coverage to Codecov.
+      uses: codecov/codecov-action@v4
+      with:
+        verbose: true
+        token: ${{ secrets.CODECOV_TOKEN }}
+        file: coverage.xml
diff --git a/tests/test-requirement.txt b/tests/test-requirement.txt
index 2948e82..c8c7785 100644
--- a/tests/test-requirement.txt
+++ b/tests/test-requirement.txt
@@ -1,5 +1,6 @@
 ruff
 pytest
+pytest-cov
 pytest-mock
 # Typing requirements. 
 mypy