关联比赛: 2024天池云原生编程挑战赛-赛道3:用通义灵码,人人都是开源贡献者
结缘大赛
一直关注天池云原生编程挑战赛,今年终于参加了2024年的赛道三-用通义灵码,人人都是开源贡献者。看到有Apache RocketMQ的题目,就尝试通过通义灵码的能力来给Apache RocketMQ的单元测试补充用例,提高单测的代码覆盖率。
这里也把如何参赛和心得分享给大家。
赛题分析
打开Apache RocketMQ社区的题目链接可以看到,社区在issue里详细描述了题目的内容。
按照要求完成通义灵码的插件的安装。
通义灵码插件安装指南:通义灵码安装教程-阿里云
在Apache RocketMQ官网上了一看到代码覆盖率,可以各个模块的测试用例和代码测试覆盖率情况。
认真阅读Apache RocketMQ的源码,并选择相应的模块分析测试用例情况,并为其补充测试用例。我这次选择的是common模块,通义灵码的使用也非常简单。
使用通义灵码
打开一个java代码文件,内容全部选择,点击通义灵码的生成单元测试按钮即可,接下来就是等着通义灵码分析代码并生成单元测试用例和代码解析,就是这个样子的:
使用通义灵码生成测试用例:
查看生成的用例代码,并生成新的testcase文件:
保证测试用例通过后,按照Apache RocketMQ社区要求提交PR即可。
小的建议
一个小建议,为了让Apache RocketMQ社区尽快的review PR,我们可以主动把自己新提交的PR和Issue和社区的题目做个关联。
这样就完成了初步完成社区的的任务流程。
收获
接下来就是重点学习和分析Apache RocketMQ的源码了,结合设计和官方文档,熟读各个模块,并不出测试用例。这个过程既是我们借助通义灵码工具为社区做贡献,更重要的是,借助这次机会我们对Apache RocketMQ的源码有了更深入的了解。