今天给你们普及一下如何提高测试水平,首先在提高测试水平以前,要先熟悉业务,让人称赞和放心的测试同窗每每对业务是很是熟悉的,知道本身的业务在干啥,知道业务的商业逻辑和非商业逻辑,其实对于测试同窗来讲是蛮重要的。
熟悉业务的方式有不少,通常来讲刚接触到新项目/新产品的同窗每每会先体验一下产品,把这个产品的功能先点一遍,就看成是熟悉业务了。这样作没什么不对,不过有点不够深刻,不理解产品的设计逻辑。理解了产品的设计逻辑才能更好的贯通整个产品的各个模块,真正作到精通。面试
在熟悉业务的时候,咱们能够问本身下面的一些问题。数据库
一、用户想要什么?用户的原始需求是什么?有些产品可能用户是没有直接需求的,彻底是经过产品去创造需求的,这样的产品原始需求可能会比较模糊,理解起来会有点难度。还有些产品是直接照搬或者高仿友商的,理解这些产品的原始需求可能就要深刻理解竞品了。缓存
二、咱们提供了什么功能?为何?这是咱们本身产品的逻辑了,用户的需求咱们能够一步一步慢慢去知足,先实现哪些后实现哪些,这些逻辑咱们也要搞明白。另外有时候实现用户的需求成本很高,由于成本的缘由咱们可能提供一些有损或者折中的方案,这种逻辑也是测试同窗所须要了解的。安全
三、赢利点在哪里?这个比较难,咱们靠什么赚钱?这个老板会比较关心,可是测试同窗最好也关心一下,毕竟赚钱的地方每每是最最严重的缺陷发生的地方。电商平台的支付若是出了问题,那么这个事故的严重程度大部分状况下是最高的。福兮祸之所倚,祸兮福之所伏。服务器
四、有没有运营数据?运营数据怎么样?运营数据反应了线上的真实状况,能帮助咱们更好的理解用户的行为,从而改进用例的优先级以及设计更加直击痛点的用例。
其次咱们须要了解一下咱们的系统是怎么样实现的?代码的逻辑是什么?代码出错之后的异常处理是怎么样的?若是以为这些问题有点棘手,那咱们也能够考虑一下如下的几个问题,其实也异曲同工。架构
一、数据库每一个库每张表是作什么的?每一个表的每一个字段是作什么用的?关联关系是什么?(若是是关系型数据库的话)负载均衡
二、系统有没有用到缓存?缓存里存些什么数据?这些数据会不会过时?过时策略是什么?运维
三、有哪些定时任务在跑?为何要跑定时/延时任务?ide
把上面一些问题弄明白了的话,在面试的时候也是有必定好处的。
接下来说解一下架构,通常来讲咱们须要了解逻辑架构和运维架构。好比逻辑架构里的一些微服务模块,每一个微服务的功能是什么,怎么跟其余微服务交互的,彻底从逻辑的角度去看。微服务
运维架构可能涉及的点会多一点,好比用户微服务部署了2个实例,负载均衡用的是xxx,如何动态扩容之类的。
最后在掌握专项方面,功能测试的话开发也会测,产品也能测,看上去并非什么特别专业的技能。
专项的话呢,开发可能要学一下才能会,产品可能一时半会学不会,嗯,终于有了点领域独占的优点,是你们提高技能时能够重点考虑的部分。
一、性能专项。服务器性能比较有技术含量的。
二、移动端专项。移动端的性能稳定性等。
三、自动化专项。ui自动化和接口自动化了。
四、安全专项。
五、监控专项。各类监控也是颇有意思的。
这是个人一些看法,但愿能够给你们带来一些好的建议,欢迎你们在评论区评论和发布本身的建议。