34 lines
927 B
Python
34 lines
927 B
Python
# -*- coding: utf-8 -*-
|
|
"""数据库集成测试"""
|
|
import pytest
|
|
from database.connection import DatabaseConnection
|
|
from database.operations import DatabaseOperations
|
|
|
|
# 注意:这些测试需要实际的数据库连接
|
|
# 在CI/CD环境中应使用测试数据库
|
|
|
|
@pytest.fixture
|
|
def db_connection():
|
|
"""数据库连接fixture"""
|
|
# 从环境变量获取测试数据库DSN
|
|
import os
|
|
dsn = os.environ.get("TEST_DB_DSN")
|
|
if not dsn:
|
|
pytest.skip("未配置测试数据库")
|
|
|
|
conn = DatabaseConnection(dsn)
|
|
yield conn
|
|
conn.close()
|
|
|
|
def test_database_query(db_connection):
|
|
"""测试数据库查询"""
|
|
result = db_connection.query("SELECT 1 AS test")
|
|
assert len(result) == 1
|
|
assert result[0]["test"] == 1
|
|
|
|
def test_database_operations(db_connection):
|
|
"""测试数据库操作"""
|
|
ops = DatabaseOperations(db_connection)
|
|
# 添加实际的测试用例
|
|
pass
|