测试员的角色
1)测试给项目产品做关键决策时提供信息依据。
2)测试员要明确自己的在项目中的使命,使命决定要做的一切。
3)测试员要服务于多类客户,针对不同客户,提供不同信息。(例如:技术支持、管理者、市场人员)
4)测试员需通知客户有关威胁产品价值的任何信息。
5)测试员要迅速找出重要的程序问题。(变更的、核心的、常用的、可用性、影响大的、最需要的部分)
6)为程序员提供支持。尽量建立最短、最快的反馈环路。
7)询问项目相关一切问题,最好结合其他沟通形式提问。
8)测试员关注失效,客户才能关注成功。注:确认程序正常是不可能的,除非运行所有可能的测试,所以确认成本是很高的。
9)测试员不会发现所有程序问题。所以应自知不能完成所有事,合理有效安排自己的时间。
10)测试员当心向客户传递隐藏的已“完备的”测试。应让客户详细了解测试过程,总结自己已实施和未实施测试点及如此安排的原因。
11)通过测试不能保证质量。测试员既不会提高质量,也不会降低质量,质量来源于构建产品的人。注:测试员能促进项目质量保证的信息,但质量保证是来自整个项目团队的。
12)永远别做看门人,即测试员永远不要把控产品发布的权力。因为这样团队其他成员可能会放松质量。建议:由控制项目、条件好的人承担发布产品责任或由集体决定是否发布产品。
13)当心测试中的“不关我事”理论。测试员的使命应该是尽其所能,通知团队可能会对产品的价值产生消极影响的所有问题。
--14)当心成为过程改进小组。因不管过程改进要干什么,它永远都会涉及感情。
15)别指望任何人都能理解测试,或理解测试员需要什么条件才能搞好测试。所以测试需向客户解释测试,且需一遍又遍地解释。因为疫苗的作用会逐渐衰退。
测试员的思考方式:
测试员不喜欢抱怨,他们喜欢提供证据;测试员不喜欢征服,他们喜欢打破产品没问题的幻觉;测试员不喜欢发布坏消息,他们喜欢把客户从虚假信念中解放出来。
16)测试运用的是认识论。认识论研究如何认识所了解的东西:研究证据和推理。(如:怎么知道软件足够好?如果软件不是足够好,怎么才能知道?怎么知道已完成了足够的测试?)
17)研究认识论有助于更好测试。(例如:如何收集和评估证据?如何进行有效的推论?如何使用不同逻辑形式?如何做出好的决策?)
18)认知心理学是测试的基础。如果说认识论告诉我们应该怎样思考,那么认知心理学告诉我们的是我们是怎样思考的。(例如:人的感觉和记忆可靠性。信念从哪里来。在压力下如何思考。)
19)测试能力差别在于测试员如何思考。(如:测试员的测试设计选择;解释所观察到的现象的能力;分析描述这些现象的能力。)