遇到最有意义的bug?

​为什么这么问?​

就是怎么发现的?怎么解决的?以后怎么办?

​首先什么是最有意义?​​大概主要是对产品或公司有至关重要的影响,能直接解决客户痛点或是给公司带来利益的bug,意义取决于bug本身的影响。

那么,这么意义重大的bug,你为什么没有发现?

用例设计阶段已经想到?那算不上惊艳。

研发自己发现告诉你了?那说明还不够隐秘,毕竟研发都能很容易的自测出来 。

客户发现后导致的客诉?有点意义,但是,为什么作为测试工程师的你没有发现?

是用例设计不到位?思考不缜密?反正就直指自己的测试水平了。

根据我自己累计发现了3K+的bug,仔细想了想,其实真没有哪个属于最有意义。每一个问题的出现,都有背后的因果关系:

比如研发压根不会自测,认为一行代码的修改不会引发大问题,然后后直接丢给测试,而不懂代码和设计逻辑的测试,注定要加班加点的测啊测啊,争取找找漏洞,运气差一点,这口铁锅说什么也得背上了。

再或者终端客户投诉了,你用相同环境步骤去验证,发现真有,这就很尴尬了!

那么都是怎么漏出去的?如果说这都是测试的锅,也说的过去,有流程、有需求设计,确实是漏了,那面试官可能认为你思考不严谨,这么明显的bug都能漏;研发转测试的版本,无法识别风险点,不懂代码逻辑,编程能力不太强;时间不够,没有讨论出测试策略并形成邮件,沟通可能差了点....

所以这样的问题,怎么回答漏都好像在给自己挖坑!

​怎么破?​

首先无法保证不漏测!

个人认为每一个严重问题都是有意义的,因为它对于产品的完善完美,起到一个量变引起质变的作用,与其说一个bug的意义,那不如通过这个bug,看到整个项目团队、流程、个人可能存在的不足的地方,而怎么去改进这些不足,怎么高效的发现bug,减少时间人力成本,值得系统的思考,这是最有意义的地方。

做了什么项目?怎么完成的?

这些年做了什么? ​​黑盒测试理论/用例设计方法/软件测试流程/软件开发流程/ISO9126设计​​,这些,但凡好学点的新人,1年内肯定滚瓜烂熟!!

​做了哪些自动化操作,提升效率?​

使用C语言,实现在嵌入式机器上的模拟点击操作,修改SMT/TH逻辑代码,实现自动触摸及Monitor操作,熟悉了Linux下的各种命令操作; 在现有的环境下,最大限度的挖掘可自动化项目,减少时间投入!

但是怎么触发报警:例如邮件/电话等通讯通知,没有做,如何实现Log信息的自动上传发送,都是值得实现的需求。

​自学了一点内容,做了一些平台。​

使用Python + Django实现selenium/appium的自动化操作,当然有什么数据驱动、关键字驱动、ddt等。但是,做的并不熟练,许多时候还是面向百度的编程。

如何搭建了集成平台,实现全公司对平台的使用?利用django的特性,加上前端HTML/CSS/JS设计出一个可交互的UI界面,后端使用Python进行各种数据处理,有哪些功能呢?新增/删除需要测试环境,配置测试环境参数;实现上传/下载各种格式的脚本,可执行单个或并发运行操作,自动生成测试报告,对于异常进行获取,触发报警机制。里面的设计逻辑和细节,还是很有挑战性的。

那么你能实现Python+appium的自动化操作吗? 会java编程吗,可以实现java的工具开发吗? ......

​面筋造火箭,进去打螺丝!​

流程是什么样?

研发的流程:瀑布模型/螺旋模型/双V模型/敏捷开发。

你们用的那种流程?每个流程的优缺点是什么?你喜欢哪种流程?

测试的流程:从需求下发到分解、设计、单元测试、集成测试、冒烟测试、系统测试等,每个公司根据自己的业务特点,或多或少的改变一些流程规范,但是测试的答题流程都差不多。

深层次思考:现有流程的问题是什么?你觉得改进的方案是什么?有提出解决吗?最终解决了吗?或为什么没有解决?

线上发布后的流程:客诉的处理;流程的回溯补缺。

下次再聊