研发测试高级篇-不可不知的经验

 1、QA需要的优秀品质

       1.会写,能写测试代码、测试工具

       2.推动项目顺利进行

       3.扎实的测试能力

       4.沟通协调能力好

       5.喜欢学习新事物

2、采取措施对QA人员的"犯错"补救

测试人员是软件的守护者,是保证软件质量的最后一道防线

最后一道关卡,测试人员“犯错”,有相关的补充措施补救;

3、测试与用户行为

测试归根到底是模拟用户的行为,替用户把各种可能的操作都做了(包括创造条件/创景),把各种问题都提前暴露出来

1)用户是谁,用户的行为是什么(做了该做的事情;没有做不该做的事情)

2)各种测试技术

3) 未来扩展性、发展等等

4、可测性改造需要遵循的原则

可测性改造,尽量避免对产品功能/实现层次的影响

5、自动化需要遵循的原则

  • 尽量避免对产品实现层次的直接影响
  • 根据产品的不同质量需求,进行不同层面(前端/后端)、不同深度的自动化。谨记:自动化不是越多越好

6、bug的发现和重现

  • 需要有严密的思维,而合则需要有冷静的头脑和敏锐的眼光
  • 夏洛克.福尔摩斯说过:“除去不可能的剩下的即使再不可能,那也是真相。” 这在测试上也有一定的指导意义,QA应该具有怀疑精神。

1)优先怀疑曾经有“前科”的模块和开发人员

2)推测开发人员的行为

7、测试是一种极其耗费精力的脑力劳动

  • 测试是一件非常有技术含量的工作,不是体力活,完全是脑力劳动。只有保持冷静的头脑,才能把软件中的缺陷都找出来。
  • 如果发现在测试制定和执行的时候,完全是重复/不用思考了,那么此时的测试多数是无效的测试

8、UI自动化遵循的原则

  • 涉及的众多框架有robotium,uiautomator,appium,这些框架有利有弊,适合自己项目的才是最好的
  • 真正实施之前,请充分考虑手动测试VS自动化测试的优劣
  • 不要过分自动化

9、专项测试时,使用对应的工具辅助进行测试

专项测试:CPU 内存 GPU过度绘制 启动/加载时长 流量 电量 弱网 权限 兼容 常规检查,使用对应的工具辅助进行测试,会事半功倍。

10、白盒测试遵循的原则

  • 评估黑盒覆盖的盲点,非核心功能,使用白盒覆盖。一旦评估不到改动,回归时常常会覆盖不到。黑盒测试起着重要的、不可替代的作用,必须遵循一定的测试理论+ 测试经验。此时恰好可以使用白盒进行覆盖
  • 实施之前,充分考虑业务需要、投入产出比、人力情况、白盒测试的弊端

11、手工测试时谨记的坑

ps:手工测试无法保证黑盒测试的科学性与严密性

  • 由于人力、资源等诸多因素的限制,难以进行全面的测试; 代码修改后影响范围的评估,一定让开发人员亲自参与。
  • 重要模块、修复bug需要时间长的功能,优先测试,给问题修复、回归留足时间
  • 反复测试容易带来倦怠情绪,所以测试期间需要交替使用多种测试方法,保持思维的敏捷

12、流程化管理

  • 不同的业务线、甚至同一个业务线内需要根据业务需要,采用不同方式的流程,切勿一刀切
  • 可以结合如下点进行综合考虑:需求变化太快、迭代速度、迭代规模大小、质量需要
  • 流程化管理的原则:服务并满足业务、质量的需要。换句话说,如果有了流程反而不能很好满足当前的业务/质量需求,那

就需要去流程化,但这点往往是最容易忽略的。

  • 优化流程原则:是否满足质量需求,达到事半功倍(但无论如何,应该对准当前最核心的痛点)

13、单元测试

  • 优势:能从根本上减少bug及定位bug的成本,也能够提高代码重构的成功率
  • 要求:实际编写测试的人员绝对熟悉代码,故而需要由最熟悉代码的人来写
  • 通常做法的劣势:测试人员进行单元测试,工作量大、周期长,结果事倍功半,所以单元测试应该由开发人员自己来写

猜你喜欢

转载自blog.csdn.net/wodeyijia911/article/details/82847743