# demo_test **Repository Path**: kong156/demo_test ## Basic Information - **Project Name**: demo_test - **Description**: 项目案例 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 5 - **Forks**: 0 - **Created**: 2025-10-14 - **Last Updated**: 2025-10-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 程序下载 https://github.com/kk152-yy/precision_testing/releases/download/v1.1/PrecisionTesting_v1.1.exe ## 项目演示 ![demo.gif](image/demo.gif) ## 0.安全性 - 该软件纯本地执行程序,项目代码分析、影响范围分析、jacoco代码测试覆盖率、接口测试等相关功能都是本地解析, 本地数据存储,无服务器依赖,无网络依赖 ## 1. 功能简介 ### 1.1 项目概述 - 代码仓库分析工具,基于git、maven、jdk环境,提供代码变更分析、影响范围分析、jacoco代码测试覆盖率、接口测试等功能。 - 精准测试工具专为OA测试团队、软件开发团队设计,用于分析代码变更对API接口的影响。 - 该工具通过对比不同代码版本之间的差异,自动识别受影响的API、JOB、Kafka、mq,并支持jacoco代码覆盖率数据, - 支持增量代码覆盖率数据,精准定位回归测试范围,测试覆盖率检测, - 帮助测试团队精准定位测试范围,提高测试效率。 ### 1.2 核心功能 - **Git提交记录:支持Git提交记录查询功能,查询开发代码提交记录** - **代码变更分析**:自动识别指定代码仓库中两个提交版本之间的文件变更情况 - **影响范围分析**:基于代码变更,智能分析可能受影响的API、JOB、Kafka、MQ - **测试用例管理**:提供API测试功能,支持测试用例的执行和结果展示 - **jacoco代码覆盖率分析**:集成代码覆盖率数据,增量代码覆盖率测试,辅助测试分析 - **历史记录管理**:自动保存用户操作历史,提供便捷的回溯功能 ### 1.3 目标用户 - 软件测试工程师 - 软件开发工程师 - QA团队负责人 ## 2. 环境要求 ### 2.1 环境要求说明 - 使用前必须安装git、maven、jdk环境 ### 2.1 git环境配置 - 参考地址:https://git-scm.com/book/zh/v2/%e8%b5%b7%e6%ad%a5-%e5%ae%89%e8%a3%85-Git - 环境验证:git --version ### 2.2 maven环境配置 - 参考地址:https://maven.apache.org/download.cgi - 环境验证:mvn -v ### 2.3 jdk环境配置 - 参考地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html - 环境验证:java -version ## 3.功能说明 ### 3.1 前提条件 - 本地下载开发代码,确保代码仓库已经初始化,命令:git clone xxx.git - 项目demo:git clone https://gitee.com/kong156/demo_test.git ### 3.1 分析配置 ![config.png](image/config.png) - 本地代码仓库路径,选择之前下载的代码仓库路径 - 代码分支,点击获取代码提交记录,会自动查出近30天活跃分支 ,选择需要分析的代码分支 - 基础版本和比较版本,每个分支开发每次提交代码都会有对应hash值,选择需要对比的版本MD5,只需要在代码分支中选择对应提交的hash值进行比较分析 ### 3.2 获取代码提交记录 - 点击获取代码提交记录,会自动查出近30天活跃分支 ,选择分支下需要对比的hash值 - 每次切换近30天代码提交记录,都会重新获取当前分支下最新的代码提交记录,所以切换响应会有点延迟 ![decode.png](image/decode.png) ### 3.3 代码分析 - 本地代码仓库路径、代码分支、基础版本和比较版本填写完毕之后,点击代码分析,会自动分析代码变更,并生成代码变更报告 - 注意代码分析因为需要编译项目,所以请确保项目已经初始化完成,并且已经配置好maven环境 - 项目越大代码编译耗时越久,请耐心等待。除了代码编译需要额外耗时30秒+,代码分析,影响范围分析全部都是本地执行,故基本不存在耗时长问题 - 分析完成后,就可以看到代码变更,代码影响范围包含接口、JOB、Kafka、MQ ![finsh.png](image/finsh.png) #### 3.3.1 代码变更 - 分析每个类下,对应方法内容的代码删除和增加,直观分析开发代码原代码和新代码变更前后情况,用不同颜色标识,红色删除代码,绿色增加代码 ![changecode.png](image/changecode.png) #### 3.3.2 影响范围 - 分析本次开发代码提交,影响范围包含接口、JOB、Kafka、MQ ![affect_api.png](image/affect_api.png) ![affect_job.png](image/affect_job.png) ![affect_kafka.png](image/affect_kafka.png) #### 3.3.3 jacoco代码测试覆盖率 ##### 3.3.3.1.先下载jacoco代理 ![jacoco_cli.png](image/jacoco_cli.png) ##### 3.3.3.2.配置jacoco代理 ###### 方式一:被测服务启动脚本添加jacoco代理参数(该方式适合所有人解析) - -javaagent:D:\Worker\jacocoagent.jar=output=tcpserver,address=0.0.0.0,port=60000 - D:\Worker\jacocoagent.jar 是你下载jacoco代理时选择的路径, - port=60000是你开放出来的端口号,address=0.0.0.0 是监听地址,0.0.0.0 表示监听所有地址 ###### 方式二:自己本地运行服务(idea)(该方式适合自己本地调试开发服务) - idea中添加jacoco代理参数 - Run -> Edit Configurations -> 添加以下jacoco代理参数 - -javaagent:D:\Worker\jacocoagent.jar=output=tcpserver,address=0.0.0.0,port=60000 ![idea_jacoco.png](image/idea_jacoco.png) ###### 方式三:如果没有idea,也可以直接用命令启动服务(该方式适合自己本地调试开发服务) - java -javaagent:D:\Worker\jacocoagent.jar=output=tcpserver,address=0.0.0.0,port=60000 -jar demotest.jar ##### 3.3.3.3.查看jacoco代码覆盖率 ![jacoco_cover.png](image/jacoco_cover.png) #### 3.3.4 接口测试 - 测试用例管理,提供影响的API测试功能,目前暂时默认只解析受影响的API单接口测试,也可以手动添加api测试 ![img.png](image/api_test.png) ### 3.4 精准测试报告 - 支持报告导出,更直观查看代码变更详情,代码覆盖率,代码影响范围 ![report_export.png](image/report_export.png) ![report_diff_code.png](image/report_diff_code.png) ![report_affect.png](image/report_affect.png) ![report_cover.png](image/report_cover.png)