# ChiikaTest **Repository Path**: RoxyXu/chiika-test ## Basic Information - **Project Name**: ChiikaTest - **Description**: TourGuide(智能旅行规划助手)是一个基于地理大模型的旅行规划系统,采用测试驱动开发(TDD)方法,构建了单元测试、集成测试和系统测试的多层级质量保障体系。系统通过持续集成流程实现自动化测试覆盖率85%以上,确保智能化路线规划、动态地图展示和对话式交互体验的稳定可靠。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2024-11-15 - **Last Updated**: 2025-11-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # TourGuide 智能旅行规划助手 ## 项目概述 TourGuide(智能旅行规划助手)是一个基于地理大模型的旅行规划系统,采用测试驱动开发(TDD)方法,构建了单元测试、集成测试和系统测试的多层级质量保障体系。系统通过持续集成流程实现自动化测试覆盖率85%以上,确保智能化路线规划、动态地图展示和对话式交互体验的稳定可靠。 ## 技术栈 ### 后端 - SpringBoot - FastAPI (Python) ### 前端 - HTML, CSS, JavaScript - Vue 3 + Vite - KQGIS 2D for Leaflet V8.4 (地图SDK) ### 数据库 - MySQL 8.0 ### 部署 - Docker - Docker Compose ## 环境要求 - JDK 11 - MySQL 8.0 - Web 浏览器:Chrome, Firefox, Safari - IDE: IDEA - Node.js v18.19.1 - npm 9.2.0 - Python 3.11.5 - pip 23.2.1 ## 快速开始 ### 使用Docker部署(推荐) 1. 确保已安装Docker和Docker Compose 2. 克隆本仓库到本地 3. 在docker目录下运行以下命令: ```bash cd docker docker-compose up --build ``` 系统将自动构建并启动以下服务: - MySQL数据库服务 - Java后端服务 - Python FastAPI服务 - 前端Web服务 ### 手动部署 #### 前端部署 1. 安装Node.js和npm 2. 进入前端项目目录 3. 安装依赖: ```bash npm install ``` 4. 启动开发服务器: ```bash npm run dev ``` #### 后端部署 1. 配置JDK 11环境 2. 配置MySQL数据库 3. 运行SpringBoot应用 #### Python服务部署 1. 安装Python依赖: ```bash pip install -r requirements.txt ``` 2. 运行FastAPI服务: ```bash uvicorn get_plan:app --reload --host 0.0.0.0 --port 7780 ``` ## 主要功能 - 智能化、个性化的旅行路线规划 - 动态可视化的地图展示 - 对话式交互体验 - 基于地理大模型的智能推荐 ## 项目结构 ``` ├── docker/ # Docker配置文件 │ ├── Dockerfile.backend # 后端Docker配置 │ ├── WorkSpace/ # Python服务工作目录 │ ├── database/ # 数据库初始化脚本 │ ├── docker-compose.yml # Docker Compose配置 │ └── frontend/ # 前端Docker配置 ├── project_test/ # 测试相关文档 └── 项目信息/ # 项目文档 ``` ## 测试 本项目高度重视软件测试,采用了系统化的测试流程和多种测试手段,确保系统的稳定性和高质量。 ### 测试环境配置 - Node.js v18+ 及 npm 9.2+ - Java 11 开发环境 - Python 3.11+ 及 pip 23.2+ - Chrome 浏览器(自动化测试) - MySQL 8.0 测试数据库 ### 测试类型 - 功能测试:验证各模块功能是否符合需求,包括路线规划、地图展示、对话交互等核心功能 - 性能测试:评估系统在高并发、海量数据下的响应速度和稳定性 - 安全测试:检测常见安全漏洞,如SQL注入、XSS攻击、权限越界等 - 兼容性测试:确保系统在主流浏览器和不同操作系统下均可正常运行 - 回归测试:每次迭代后对核心功能进行回归验证,防止新代码引入缺陷 ### 自动化测试框架配置 ```bash # 前端测试环境 npm install --save-dev jest @vue/test-utils # Java后端测试 在build.gradle中添加: testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1' test { useJUnitPlatform() } # Python服务测试 pip install pytest httpx ``` ### 持续集成策略 ```yaml # .github/workflows/ci.yml name: CI Pipeline on: [push] jobs: test: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v3 - name: Set up Node.js uses: actions/setup-node@v3 with: node-version: '18' - name: Run frontend tests run: | cd frontend npm ci npm test - name: Run backend tests run: | ./gradlew test - name: Run Python tests run: | pip install -r requirements.txt pytest -v ``` ### 测试数据生成方案 ```java // Java测试数据生成 import com.github.javafaker.Faker; public class TestDataGenerator { private static final Faker faker = new Faker(); public static String randomDestination() { return faker.address().cityName(); } } ``` ```python # Python测试数据生成 from faker import Faker def generate_test_user(): fake = Faker('zh_CN') return { 'username': fake.user_name(), 'email': fake.email(), 'preferences': { 'transport': fake.random_element(['自驾', '公交', '骑行']) } } ``` ### 测试报告示例 ``` 测试报告摘要 ──────────────── 测试执行时间: 2024-12-01 14:30:00 总用例数: 258 通过率: 98.4% 关键指标: - 平均响应时间: 320ms - 峰值并发支持: 1500 QPS - 安全漏洞数: 0 ``` ### 项目测试结构 ``` ├── frontend/ │ └── tests/ # 前端测试用例 │ ├── unit/ # 单元测试 │ └── e2e/ # 端到端测试 ├── src/test/java/ # Java后端测试 └── WorkSpace/ └── tests/ # Python服务测试 ``` ### 测试执行流程 1. 本地开发测试 ```bash # 前端测试 npm run test:unit # Java后端测试 ./gradlew test # Python服务测试 pytest -v ``` 2. 完整测试套件执行 ```bash docker-compose -f docker-compose.test.yml up --build ``` 3. 生成覆盖率报告 ```bash # 前端覆盖率 npm run test:coverage # Java覆盖率 ./gradlew jacocoTestReport # Python覆盖率 pytest --cov=./ --cov-report=html ``` ### 缺陷管理流程 1. 使用GitHub Issues进行缺陷跟踪 2. 缺陷分类标签:bug、critical、ui 3. 缺陷生命周期:新建 → 确认 → 修复 → 验证 → 关闭 ### 性能测试指标 | 测试场景 | 并发用户数 | 平均响应时间 | 错误率 | |----------------|------------|--------------|--------| | 路线规划查询 | 1000 | 420ms | 0.02% | | 地图渲染 | 500 | 680ms | 0.15% | | 用户登录 | 2000 | 320ms | 0% | ### 安全测试标准 - OWASP TOP 10 2021合规性检查 - CWE/SANS TOP 25关键漏洞扫描 - GDPR数据隐私合规验证 ### 测试文档规范 1. 测试用例模板包含: - 用例编号 - 前置条件 - 测试步骤 - 预期结果 - 实际结果 2. 缺陷报告包含: - 环境信息 - 重现步骤 - 日志截图 - 严重等级评估 ``` ## 许可证 请查看项目中的LICENSE文件。