今天听了老徐的jenkins实战分享,回想14年做测试时,公司已经在用一套完整的自动化测试框架来完成这些任务,今天再听分享,梳理的思路更加清楚,写下前公司工作的体验。
公司的各个国家实验室开发团队、测试团队以及测试线都非常多,资源管理及同步非常重要,推崇效率是第一生产力。我们需要经常更新工具类维护的代码以及其他厂家测试硬件的底层接口的代码,使用git来进行不同branch的自动化测试开发,有新功能模块的,有bug修复的...,本地单元测试通过无误后,需要先在自己的实验室测试线上,利用jenkins自动化构建项目,保证build正常通过,部署到本地测试环境运行。本地测试稳定周期持续7天无误,依照不同的项目进度,可使用专门用来进行dialy test case的测试线进行测试,将相同的测试硬件需求的case放在同一测试线上,进行队列化自动化去测试每天开发团队产生的产品包。如果有测试case 失败,邮件立即提醒,测试需要去检查是否产品包出现问题,迭代的版本发生了什么变化,这样可以立即反馈每天的迭代版本状态,快速定位开发版本的问题。
这里使用jenkins有个好处就是高效协作,团队成员来自不同地区,每天进行测试开发的人员非常多,工具类和其他硬件接口不断变化,bug不断在修改,如果每个人在构建和部署上面去人工完成,需要大量的重复性劳动,效率过低,且不能避免人工失误引起的测试线问题、服务器问题。
之前的体验更多在具体功能上的测试,jenkins的管理都是专门的团队维护,所以在jenkins的系统管理以及使用上没有花过心思,现在觉得还是自己走完所有的部署及维护才能有更加深切的持续集成部署体验。