每件小事都有值得学习的地方

把每件小事做好,并从中思考、发现和学习到新的东西。


这周,分配到了自动化测试执行任务,搬砖了一周:分析和执行自动化测试。这项工作对自动化任务的调度的考验很大,如何安排任务、调度任务、处理突发问题,都非常考验人的。刚刚接到这种任务时感觉没有技术含量,但是仔细想想又非常考验人的能力。

平时开发自动化测试脚本的工作,和这种任务时不同的,前者是业务加代码,后者是执行自动化测试加设备调度以及环境问题处理,工作思路和侧重点是不同的。


先说说这次的具体工作:测试对象是70多台IPC设备,通过jenkins在对应的版本上跑自动化测试,以接口实现为主的功能测试为主。

磨刀不误砍柴工。接到一个这样的任务,应该用一小段时间分析一下我该怎么做,怎么下手?对于这次的任务,由于需要测试的IPC数量较多,应该想着待测设备是否都是正常运行的,这是需要确定的。其次,对于需要测试的版本,是不是所有的设备都支持所需测试的版本,把不支持该版本的设备剔除,明确测试样本数量。同类的测试项放在一起执行,一批一批地执行。

协调、调度能力。对于每台测试电脑,在数量有限的情况下,如何充分使用、不能负载太多,这也是一个需要注意的点,否则会跑不完。先看环境中有多少正常的自动化测试电脑,本次需要跑多少IPC,计算平均一下每台电脑跑几个IPC,每次跑后进行标记,做好心中有数。(突然想到jenkins还是不是很智能,如果每次跑任务后,能实时显示当前每个节点正在执行拿个任务、有多少任务等待中,那体验感就更好了)

另外,每次跑一批设备后,在之后的几分钟需要检查一下该任务是否在正常执行,以免发生错误、异常导致没有继续下去,这样的情况还是比较多的:测试电脑环境问题、设备问题、自动化测试脚本问题等。


确保主体工作。遇到有问题的设备,应该做好记录,先将正常设备跑起来,保证大多数设备能执行测试跑下去,留有时间再去处理特殊的异常设备或事情。

养兵千日用兵一时。最近两周有一个深刻的体会,平时应该对待测试环境中的设备,就像军队一样,养兵千日用兵一时,测试同理,平时也需要“养”,应该有必要的维护和更新,而不是等到要用时才去使用、发现问题、处理问题,这样会导致紧急的任务不得不延期、甚至造成阻塞。

发现问题及时改进。通过这次任务,就发现实际环境中的设备和维护的表格里记录的不同:表格中有的实际环境中却没有,这样就得花时间去找,还有的虽然设备存在,但是没有在线,更甚者是没有贴标签,不好排查哪台对应哪个设备。除此以外,还有的设备起不来,无法正常运行,为了让设备正常上线运行起来,就需要花时间去处理各种问题。以上都是发现的问题,都是在以后需要思考和改进的地方。

物理资源摆放。我们现在的自动化测试IPC设备摆放有两个问题:随着数量增加后,不易进行查找,如果按照贴的IP顺序进行摆放,又会导致占用比较大的空间(就像python中的字典与列表一样, 列表占有内存小,但是查询速度慢,字典查询速度快但是占用内存大)。除此,有的同事遗忘了给设备贴标签,有的拿出设备房后改了设备IP等,导致会出现一些问题,这都是需要改进的,待加到任务清单中解决。

跟踪和及时反馈。执行结束后,报告的分析需要分配任务给不同的同事,以后发现的问题进行汇总,结果反馈。这也是不容易的,已知问题、新增问题、待跟踪问题,后续邮件反馈后需要持续跟踪没有定论的问题,直到提单或者开发确认不是问题。


尝试开发使用小脚本辅助工作。准备完善一个脚本,以后遇到这种任务时,执行脚本,检查管理列表中的设备在环境中是否在线、正常运行;目前还只是检查是否在线,还有检查其他问题部分的编码,花点时间就可以实现了。作为搞自动化的,能减少手动测试就减少,多利用已有的技能来为工作中重复的操作实现自动化。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章