diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index ce05fc5..210ec1a 100644 --- a/.github/workflows/ci-cd.yml +++ b/.github/workflows/ci-cd.yml @@ -254,7 +254,9 @@ jobs: run: poetry install --no-interaction - name: Install redis-tools - run: sudo apt-get install -y redis-tools + run: | + sudo apt-get update + sudo apt-get install -y redis-tools - name: Wait for services run: | @@ -607,7 +609,7 @@ jobs: run: | echo "## Test Results Summary" >> $GITHUB_STEP_SUMMARY echo "" >> $GITHUB_STEP_SUMMARY - + # Unit tests if [ -f junit-unit.xml ]; then UNIT_TESTS=$(grep -o 'tests="[0-9]*"' junit-unit.xml | head -1 | grep -o '[0-9]*') @@ -619,7 +621,7 @@ jobs: echo "- Errors: $UNIT_ERRORS" >> $GITHUB_STEP_SUMMARY echo "" >> $GITHUB_STEP_SUMMARY fi - + # Integration tests if [ -f junit-integration.xml ]; then INT_TESTS=$(grep -o 'tests="[0-9]*"' junit-integration.xml | head -1 | grep -o '[0-9]*') @@ -629,7 +631,7 @@ jobs: echo "- Failures: $INT_FAILURES" >> $GITHUB_STEP_SUMMARY echo "" >> $GITHUB_STEP_SUMMARY fi - + # E2E tests if [ -f junit-e2e.xml ]; then E2E_TESTS=$(grep -o 'tests="[0-9]*"' junit-e2e.xml | head -1 | grep -o '[0-9]*') @@ -639,7 +641,7 @@ jobs: echo "- Failures: $E2E_FAILURES" >> $GITHUB_STEP_SUMMARY echo "" >> $GITHUB_STEP_SUMMARY fi - + # Dashboard Backend Middleware tests if [ -f junit-middleware.xml ]; then MIDDLEWARE_TESTS=$(grep -o 'tests="[0-9]*"' junit-middleware.xml | head -1 | grep -o '[0-9]*') diff --git a/pyproject.toml b/pyproject.toml index 52d55b4..8433940 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -9,30 +9,30 @@ packages = [{include = "src"}] [tool.poetry.dependencies] python = "^3.11" -pytest = "9.0.3" +pytest = "9.1.1" pytest-asyncio = "1.4.0" pytest-xdist = "3.8.0" pytest-cov = "7.1.0" -allure-pytest = "2.13.5" +allure-pytest = "2.16.2" pytest-html = "4.2.0" -httpx = "0.26.0" +httpx = "0.28.1" requests = "2.34.2" playwright = "^1.62" -selenium = "4.16.0" +selenium = "4.50.0" faker = "40.37.0" -factory-boy = "3.3.0" -pydantic = "2.6.1" -pydantic-settings = "2.1.0" -pyyaml = "6.0.1" -python-dotenv = "1.2.2" +factory-boy = "3.3.3" +pydantic = "2.14.0" +pydantic-settings = "2.15.0" +pyyaml = "6.0.3" +python-dotenv = "1.2.4" pydantic-extra-types = "2.11.1" locust = "^2.31" -bandit = "1.7.6" +bandit = "1.9.4" safety = ">=3.0.0" sqlalchemy = "^2.0" -asyncpg = "0.29.0" +asyncpg = "0.32.0" aiomysql = "0.3.2" -aiosqlite = "0.19.0" +aiosqlite = "0.22.1" fastapi = "0.125.0" python-jose = {version = ">=3.4.0,<4", extras = ["cryptography"]} bcrypt = "5.0.0" @@ -43,12 +43,12 @@ psutil = "7.2.2" [tool.poetry.group.dev.dependencies] black = "26.5.1" -ruff = "0.16.4" +ruff = "0.16.10" mypy = "2.3.1" pre-commit = "4.6.2" isort = "8.0.1" types-PyYAML = "6.0.12.20260906" -types-requests = "2.31.0.20240106" +types-requests = "2.33.0.20261006" types-urllib3 = "1.26.25.14" mkdocs = "^1.5.0" mkdocs-material = "^9.5.0" diff --git a/requirements.txt b/requirements.txt index d4e76f0..0b0a48c 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,7 +5,7 @@ pytest==9.0.3 pytest-asyncio==1.4.0 pytest-xdist==3.8.0 pytest-cov==7.1.0 -allure-pytest==2.13.5 # Fixed: correct package name +allure-pytest==2.16.2 # Fixed: correct package name; aligned with pyproject.toml and allure-python-commons (2.13.5 pins commons==2.13.5) pytest-html==4.2.0 # HTTP Clients @@ -13,7 +13,7 @@ httpx==0.26.0 requests==2.34.2 # aligned with pyproject.toml; locust>=2.31 requires requests>=2.32.2 # UI Testing -playwright==1.62.0 +playwright==1.63.0 selenium==4.16.0 # Data Generation @@ -25,14 +25,14 @@ pydantic==2.6.1 pydantic-settings==2.1.0 pyyaml==6.0.1 python-dotenv==1.0.0 -pydantic-extra-types==2.6.0 +pydantic-extra-types==2.11.1 # Reporting (allure-pytest already listed above) -allure-python-commons==2.13.5 +allure-python-commons==2.16.2 # Performance Testing -locust==2.46.4 -pytest-benchmark==5.2.3 +locust==2.46.7 +pytest-benchmark==5.3.0 # Security Testing bandit==1.7.6 @@ -58,8 +58,8 @@ redis==5.0.1 # Redis client psutil==5.9.8 # System monitoring # Database ORM & Migration -sqlalchemy==2.0.25 # ORM for database operations -alembic==1.13.1 # Database migrations +sqlalchemy==2.1.4 # ORM for database operations +alembic==1.20.0 # Database migrations # async HTTP aiohttp>=3.14.3