看开发的设计
1、了解开发的设计:工作流、数据流、数据结构
例子:outlook会议,会提前15分钟弹出通知,why?把事件存储到本地,放入queue,时间程序检测queue。
工作流:哪些service在跑;数据流:calendar;数据存储:queue。
了解这些才能发现瓶颈。
2、覆盖不同的用户场景
3、可测试性
4、风险
看代码
1、接口、参数:不需要对代码细节很了解,看关键api,了解结构。系统api,jdk api,自己写的api,由参数导致的问题很多
2、代码检查或审查:评论是轻量级的、目标代码的子集、检查最关键的点/难点
3、调试技巧:通过debug加深对系统的理解,有成就感
第二阶段:改变流程
从bug中学习
1、找到原因:软件的问题最终取决于人。
2、开发和测试都做过程中的一环,改进、提高过程。
3、Bug的“社交网络”
Bug之间也会有联系,过段时间回头来review下这些bug,总能找到一些共同点和联系。
开始行动
1、从小事做起,取得阶段性的成果
2、树立榜样
Q&A环节的一些问答
问:以上的讲述,测试已经插手了部分PD和Dev的事情,测试如何建立自己的权威性?
答:这个有需要时间和技能的累积的,并不是在一无所知的时候就参与这些事情、指手画脚。刚开始的时候可以只起补充作用,补充遗漏的场景;2. 长期与开发合作后,向开发了解产品的设计和实现;3. 提升自己技能后,让开发觉得自己可以帮助减轻开发的工作,开始协同合作。
问:测试做事情动力不足,如何解决
答:1、定义有价值有意义的bug,适当表扬;2、避免做重复的事情;3、根据个人特点,分配不同的人做不同的事
问:在功能测试和自动化测试中保存平衡,并行执行它们
答:1、定期团队分享,分享个人在某个领域很深的理解;2、专注做某一件事情,等过了半年或一年后再去做不同的事情,不提倡所有的事情都去做&权重都一样,有侧重的培养团队成员。