
cometbft/e2e-node本Docker镜像提供了针对CometBFT***框架的端到端测试应用,旨在通过模拟真实场景下的节点交互、交易处理和共识流程,全面验证CometBFT的功能正确性、性能表现及系统稳定性。镜像内置测试工具链和预设测试场景,支持快速部署测试环境并执行自动化测试流程。
通过以下命令启动基础测试环境,默认执行预设的共识协议测试用例:
bashdocker run -it --name cometbft-e2e-test \ -v /path/to/custom/testcases:/testcases \ # 可选:挂载自定义测试用例 -e NODE_COUNT=4 \ # 测试节点数量(默认4) -e TEST_DURATION=300 \ # 测试持续时间(秒,默认300) -e LOG_LEVEL=info \ # 日志级别(debug/info/warn/error,默认info) cometbft/e2e-test
对于需要模拟复杂网络拓扑的测试场景,可使用docker-compose.yml配置多节点协同测试:
yamlversion: '3' services: test-controller: image: cometbft/e2e-test command: ["run", "--controller"] environment: - NODE_COUNT=5 - TEST_CASE=/testcases/network_partition_test.json - METRICS_OUTPUT=/metrics/results.json volumes: - ./testcases:/testcases - ./metrics:/metrics depends_on: - node-1 - node-2 - node-3 - node-4 - node-5 node-1: image: cometbft/cometbft:latest command: ["node", "--proxy_app=kvstore"] volumes: - ./node1/data:/cometbft/data - ./node1/config:/cometbft/config # 重复定义node-2至node-5,配置对应的数据和配置目录
| 环境变量 | 描述 | 默认值 | 可选值 |
|---|---|---|---|
NODE_COUNT | 测试网络节点数量 | 4 | 2-20 |
TEST_CASE | 测试用例路径(容器内路径) | /default/consensus_test.json | 自定义JSON测试用例路径 |
TEST_DURATION | 测试持续时间(秒) | 300 | 60-3600 |
LOG_LEVEL | 日志输出级别 | info | debug, info, warn, error |
METRICS_ENABLED | 是否启用性能指标收集 | true | true, false |
NETWORK_DELAY | 节点间网络延迟(毫秒) | 10 | 0-1000 |
用户可通过挂载JSON格式的自定义测试用例文件扩展测试场景,测试用例基本结构示例:
json{ "name": "网络分区恢复测试", "steps": [ { "action": "start_network", "nodes": 5 }, { "action": "partition_network", "partitions": [["node-1", "node-2"], ["node-3", "node-4", "node-5"]], "duration": 60 }, { "action": "heal_network", "verify_consensus": true }, { "action": "submit_transactions", "count": 100, "rate": 10 } ], "expected_results": { "consensus_achieved": true, "transaction_success_rate": ">95%" } }
validate-testcase命令验证格式正确性
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务