已合并
【UBSE】补充HA和CLI相关IT用例 #1468
weaver创建于 6 天前
【UBSE】补充HA和CLI相关IT用例 #1468
已合并
Pull Request已成功合入, 合并人@openeuler-ci-bot
(感谢 weaver 的贡献)6 天前 关联了issue:[Enhancement]: [UBSE] 补充0/1级 IT用例
atomgit-bot
6 天前 评论:
6 天前 评论:
变更摘要
本 PR 为 UBSE 选举(HA)模块补充集成测试用例,围绕选举收敛、主节点心跳、候选节点约束与选举禁用等场景新增测试。主要包含:新增双节点主节点周期心跳校验用例、双节点均禁用选举(election.candidate=false + election.wait=false)保持 init 角色用例、四节点错峰启动(节点2先升主、其余节点后加入)用例,以及四节点候选节点列表(election.candidateNodes=3,4)约束用例;同时在测试框架中新增两个场景夹具(Tongsuan1dFourNodesCandidateNodesScenario、Tongsuan1dTwoNodesElectionDisabledScenario)和对应的测试函数实现(election_cases.cpp/election_cases.h)。
主要改动
- 新增四节点错峰启动用例:在
tongsuan_1d_four_nodes/all_tests.cpp注册ExistingMasterUniqueStandby用例,实现RunFourNodeExistingMasterUniqueStandbyTest,通过KillNode/RestartNode模拟错峰启动,验证仅剩节点2时其升主、其余节点同时恢复后集群收敛为唯一主(仍为节点2)+ 唯一备 + 2 agent,并从 CLIdisplay cluster视角再次确认。 - 新增候选节点约束场景与用例:新增场景目录
tongsuan_1d_four_nodes_candidate_nodes,场景夹具Tongsuan1dFourNodesCandidateNodesScenario为四节点配置election.candidateNodes=3,4;用例CandidateNodesOnlyMaster通过RunFourNodeCandidateNodesOnlyMasterTest验证非候选节点1、2 始终不升主,候选节点3、4 可先后升主并选出唯一备。 - 新增双节点主节点周期心跳用例:在
tongsuan_1d_two_nodes/all_tests.cpp注册MasterPeriodicHeartbeat用例,实现RunTwoNodeMasterPeriodicHeartbeatTest,通过主节点日志[ELECTION] ProcTimer MASTER send pkt id=<id>校验心跳具备周期性(3 个周期内至少 3 次)且确实发往对端备节点。 - 新增选举禁用场景与用例:新增场景目录
tongsuan_1d_two_nodes_election_disabled,场景夹具Tongsuan1dTwoNodesElectionDisabledScenario配置两节点election.candidate=false且election.wait=false;用例ElectionBothDisabledKeepInit通过RunTwoNodeBothElectionDisabledTest校验配置、等待选举超时后确认两节点均停留在 init 角色(日志正面信号)且无 Master/Standby/Agent 角色切换(日志反面信号)。 - 扩展选举测试公共实现:在
election_cases.cpp/election_cases.h新增公共判断函数HasUniqueMasterAndStandby(判定运行节点集合是否收敛为唯一主+唯一备,可指定期望主节点),并声明/实现上述四个测试函数,供各场景用例调用。


6 天前 将hlinbo,shw030915,Gao_Victor,qmyyxtl,caowaterman设为审查人
atomgit-bot
6 天前 评论:
6 天前 评论:
此处折叠了125条消息 查看更多
1 小时前 添加了label:docs_ci_successful
1 小时前 删除了label:ci_processing
openeuler-ci-bot
1 小时前 评论:
1 小时前 评论:
| Check Name | Build Result | 详情 | Build Details | |
|---|---|---|---|---|
| check_sca | ⚠WARNING | • SCA检查发现未确认的开源组件问题,请查看报告: https://www.openlibing.com/apps/personalScandTaskInfor/person/ff020c51-05d8-42e3-9fed-cbf309cf8f9c?projectId=300024&codeHostingPlatformFlag=gitcode | #7036 | |
| check_code | ✅SUCCESS | |||
| check_package_license | ⚠WARNING | • 仓库copyright检查未通过: ubs-engine/test/IT/CMakeLists.txt、ubs-engine/test/IT/scenarios/tongsuan_1d_four_nodes_candidate_nodes/CMakeLists.txt、ubs-engine/test/IT/scenarios/tongsuan_1d_two_nodes_election_disabled/CMakeLists.txt文件缺失Copyright声明, Copyright path:缺少项目级Copyright声明文件 | ||
| x86_64 | check_build | ✅SUCCESS | #7026 | |
| aarch64 | check_build | ✅SUCCESS | #7034 | |
| pre-commit | check_build | ✅SUCCESS | #6374 | |
| DT | check_build | ✅SUCCESS | #6324 | |
| check_issue_associate | check_build | ✅SUCCESS | #9890 | |


1 小时前 添加了label:ci_successful
openeuler-ci-bot
1 小时前 评论:
1 小时前 评论:
当前PR是否有AI参与:
[x] 否
[ ] 是
__1. AI Agent 平台:
__2. AI 模型:
__3. Prompt上下文 :
参考:openEuler社区《生成式AI工具使用与开源贡献政策》
PR功能描述 / 为什么需要这个合入**:
该PR关联的issue
(格式为fixes #<issue号>, 或者resolves #<issue号>): fixes #
希望检视人员了解: