# UnionPaySampler **Repository Path**: donggp123/union-pay-sampler ## Basic Information - **Project Name**: UnionPaySampler - **Description**: UnionPay ISO8583 JMeter Sampler是一个用于测试银联ISO8583协议的JMeter插件。它提供了完整的ISO8583报文测试能力,支持性能测试和功能验证。 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2025-07-15 - **Last Updated**: 2025-07-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # UnionPay ISO8583 JMeter Sampler [![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) ## 项目概述 UnionPay ISO8583 JMeter Sampler是一个用于测试银联ISO8583协议的JMeter插件。它提供了完整的ISO8583报文测试能力,支持性能测试和功能验证。 ## 功能特性 - 完整的ISO8583协议支持 - 可视化配置界面,简化测试配置 - 自定义报文格式支持 - 详细的性能测试结果统计 - 支持多种连接方式(TCP/IP等) ## 系统要求 - Java 1.8或更高版本 - JMeter 5.5或更高版本 - Maven 3.6+ (仅开发需要) ## 安装方法 ### 从源码构建 1. 克隆项目仓库 ```bash git clone https://gitee.com/eatfashdaddy/union-pay-sampler.git ``` 2. 构建项目 ```bash cd UnionPaySampler mvn clean package ``` 3. 将生成的jar文件(`target/UnionPaySampler-1.0.0-jar-with-dependencies.jar`)复制到JMeter的`lib/ext`目录 4. 重启JMeter ## 使用方法 1. 在JMeter中创建新的测试计划 2. 添加线程组 3. 添加UnionPay Sampler: - 右键线程组 > Add > Sampler > UnionPay ISO8583 Sampler 4. 配置Sampler参数: - 服务器地址和端口 - 报文类型 - 字段映射 5. 添加监听器查看结果 6. 运行测试计划 采样器界面 ![JMeter插件截图](images/字段说明GUI.png) ## 配置说明 ### 报文类型配置 支持常见的ISO8583报文类型,包括: - 0200 - 金融交易 - 0210 - 金融交易响应 - 0420 - 冲正交易 ### 字段映射配置 支持标准ISO8583字段映射,包括: - 主账号(PAN) - 交易金额 - 交易时间 - 商户信息等 ### 连接参数配置 - 服务器地址: 测试服务器IP - 端口: 测试服务器端口 - 超时设置: 连接和响应超时 ## 开发指南 ### 项目结构 ``` src/main/java/com/unionpay/jmeter/ ├── config # 配置相关类 ├── gui # JMeter插件界面 ├── iso8583 # ISO8583协议实现 ├── sampler # JMeter采样器实现 └── util # 工具类 ``` ### 核心类说明 - `UnionPaySampler`: 主采样器实现 - `UnionPaySamplerGUI`: 插件界面实现 - `ISO8583Message`: ISO8583报文处理核心 ### 扩展方法 1. 继承`UnionPaySampler`实现自定义采样器 2. 修改`ISO8583Message`扩展协议支持 3. 通过`config`包添加新配置项 ## 许可证 本项目采用Apache License 2.0许可证。详情请参阅[LICENSE](LICENSE)文件。 ## 联系方式 如有问题或建议,请联系: - Email: 343629455@qq.com - GitHub: [https://gitee.com/eatfashdaddy/union-pay-sampler](https://gitee.com/eatfashdaddy/union-pay-sampler)