# NAC公链集成测试系统 NAC (New Asset Chain) 公链的完整集成测试框架,提供全面的测试覆盖,包括单元测试、集成测试、端到端测试和性能测试。 ## 📋 目录 - [概述](#概述) - [功能特性](#功能特性) - [快速开始](#快速开始) - [测试架构](#测试架构) - [测试类型](#测试类型) - [运行测试](#运行测试) - [CI/CD集成](#cicd集成) - [性能基准](#性能基准) ## 概述 本项目是NAC公链的集成测试系统,旨在确保NAC公链各个核心模块的正确性、性能和稳定性。测试系统基于Rust的测试框架构建,支持自动化测试和持续集成。 ### 核心测试模块 - **CBPP共识协议测试** - Constitutional Byzantine Paxos Protocol - **NVM虚拟机测试** - NAC Virtual Machine - **ACC协议测试** - ACC-20/721/1400等协议 - **CSNP网络测试** - Constitutional Secure Network Protocol - **宪法系统测试** - NAC Constitution System - **RWA资产交易测试** - Real World Asset Exchange - **跨链桥接测试** - Cross-chain Bridge - **合规验证测试** - Compliance & KYC/AML ## 功能特性 ### ✅ 全面的测试覆盖 - **单元测试** - 39个单元测试,覆盖所有公共工具模块 - **集成测试** - 70+个集成测试,覆盖5大核心模块 - **端到端测试** - 30+个E2E测试,覆盖4大业务流程 - **性能测试** - 20+个性能测试,包括TPS、并发、压力和稳定性测试 ### 🚀 高性能测试工具 - 支持并发测试,最高支持10,000+并发用户 - TPS性能测试,目标10,000+ TPS - 压力测试,支持100,000+交易 - 稳定性测试,支持24小时+持续运行 ### 🔧 灵活的配置 - 支持多种测试配置(默认/快速/性能/压力) - 可配置的超时时间 - 可配置的节点数量和网络参数 - 支持自定义测试数据 ### 📊 详细的测试报告 - JSON格式测试结果 - HTML格式测试报告 - 测试覆盖率统计 - 性能基准报告 ## 快速开始 ### 前置要求 - Rust 1.75.0+ - Cargo - Git ### 安装 ```bash # 克隆仓库 git clone https://git.newassetchain.io/nacadmin/NAC_Blockchain.git cd NAC_Blockchain/nac-integration-tests # 安装依赖 cargo build # 运行测试 cargo test ``` ### 快速测试 ```bash # 运行单元测试 cargo test --lib # 运行集成测试 cargo test --test '*' # 运行特定模块测试 cargo test --test integration/cbpp_tests # 运行性能测试 cargo test --test performance/tps_test --release ``` ## 测试架构 测试系统采用分层架构,包括公共工具层、集成测试层、端到端测试层和性能测试层。详细架构设计请参考 `docs/ARCHITECTURE.md`。 ## 测试类型 ### 1. 单元测试 测试单个函数和模块的正确性。 ```bash cargo test --lib ``` ### 2. 集成测试 测试多个模块之间的交互。 ```bash cargo test --test integration/cbpp_tests ``` ### 3. 端到端测试 测试完整的业务流程。 ```bash cargo test --test e2e/transaction_flow ``` ### 4. 性能测试 测试系统的性能和稳定性。 ```bash cargo test --test performance/tps_test --release ``` ## 运行测试 ### 使用脚本运行 ```bash # 运行所有测试 ./scripts/run_all_tests.sh ``` ### 使用Cargo运行 ```bash # 运行所有测试 cargo test --all # 运行特定测试 cargo test test_cbpp_normal_consensus # 运行测试并显示输出 cargo test -- --nocapture ``` ## CI/CD集成 CI配置文件位于 `config/ci_config.yml`,支持自动化测试、代码质量检查、测试覆盖率统计等。 ## 性能基准 ### 目标指标 | 指标 | 目标值 | 说明 | |-----|--------|------| | TPS | > 10,000 | 峰值交易处理能力 | | 区块确认时间 | < 5秒 | 3个区块确认 | | 交易延迟 | < 100ms | P95延迟 | | 并发用户 | > 10,000 | 同时在线用户 | | 稳定运行 | > 24小时 | 无崩溃 | --- **版本**: v1.0.0 **最后更新**: 2026-02-18 **维护者**: NAC开发团队