# 软件测试 **Repository Path**: haobotan/software-testing ## Basic Information - **Project Name**: 软件测试 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-11 - **Last Updated**: 2026-04-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: Java, Testing ## README # 软件测试练习项目 这是一个Java软件测试学习项目,包含了从基础到高级的多种测试场景和练习模块。 ## 项目结构 ``` software-testing/ ├── test_01/ # 基础测试练习 │ ├── 01_one/ # 最大值算法测试 │ ├── 02_one/ # 最大值算法测试(另一种实现) │ └── 03_one/ # 温度转换器测试 ├── test_02/ # 进阶测试练习 │ ├── 01_tow/ # 计算器测试 │ ├── 02_tow/ # 图书管理系统测试(Mock测试) │ └── 03_tow/ # 购物车测试 └── test_03/ # 高级测试练习 ├── 01_three/ # 环境模拟测试 ├── 02_three/ # Servlet模拟测试 └── 04_three/ # Spring Boot二维码应用测试 ``` ## 模块说明 ### test_01 - 基础测试 - **01_one / 02_one**: 最大值算法实现与测试 - `Largest.java`: 实现查找数组最大值的算法 - 包含多种测试场景:简单数组、顺序数组、重复元素、负数、空数组 - **03_one**: 温度转换器 - `IThermometer`: 温度计接口 - `ThermometerImpl`: 实现摄氏/华氏温度转换 - 测试温度转换功能和显示功能 ### test_02 - 进阶测试 - **01_tow**: 计算器 - `Calculator`: 实现加减乘除、平方、平方根等运算 - 包含基础算术运算的单元测试 - **02_tow**: 图书管理系统 - `Book`: 图书实体类 - `BookManager`: 图书管理接口 - `BookService`: 图书服务(借书/还书) - 使用Mock对象进行测试 - **03_three**: 购物车 - `Product`: 商品实体 - `ShoppingCart`: 购物车功能(添加/移除商品) - 测试购物车的增删改查功能 ### test_03 - 高级测试 - **01_three**: 环境模拟测试 - `Envirorunental`: 环境接口 - `MockSystemEnvirorunent`: 模拟系统环境 - 演示如何使用Mock对象进行环境依赖测试 - **02_three**: Servlet测试 - `MockHttpServletRequest`: 模拟HTTP请求 - `MockHttpServletResponse`: 模拟HTTP响应 - `TemperatureServlet`: 温度服务Servlet - 展示Web层测试技巧 - **04_three**: Spring Boot二维码应用 - 基于Spring Boot + LiteFlow的二维码生成/解码服务 - 包含多个组件:Base64转图片、解码流、URL下载、二维码生成、上传到COS等 - 集成腾讯云COS对象存储 ## 技术栈 - **Java** - **Maven** - **JUnit 4/5** - **Spring Boot** - **Log4j2** ## 快速开始 ### 前提条件 - JDK 8 或更高版本 - Maven 3.x ### 构建项目 ```bash # 构建整个项目 mvn clean install # 进入特定模块构建 cd test_01/01_one mvn clean test ``` ### 运行测试 ```bash # 运行所有测试 mvn test # 运行特定模块的测试 cd test_01/01_one mvn test ``` ## 测试说明 项目涵盖了软件测试的多种技术和场景: | 测试类型 | 模块 | |---------|------| | 单元测试 | test_01, test_02 | | Mock测试 | test_02/02_tow, test_03/01_three | | Web层测试 | test_03/02_three | | 集成测试 | test_03/04_three | ## 许可证 本项目仅用于学习交流。