人们认为[高级]开发人员与测试人员的比例最好?
显然,这在一定程度上取决于开发/维护吞吐量,但新公司/项目是否可以起作用?
此外,您会使用"纯"测试人员,还是将测试与其他角色(例如文档,用户培训等)结合起来?
显然,答案可能取决于所使用的公司战略/开发模型,因此请说明您是否正在回答,或者是否针对特定类型的产品/发布,等等.
Joel为每2名工程师为1名测试员提供了一个很好的论据,并且涵盖了人们因没有这些测试人员而使用的借口.
我曾在这里写过这篇博文.最相关的摘录如下.
"我见过高质量的产品以10:1的开发:测试比例生产,而且产品比例高达1:1.不同之处在于关注和关注质量.如果团队中的每个人(包括管理层)都深入关心产品质量,无论比例如何都很有可能发生.但如果质量是应该在产品中测试的,那么每个开发人员至少要有一个测试人员 - 如果你能获得的话他们."
最近有一篇关于InfoQ的相关文章,你可能会感兴趣.
首先,开发人员对测试人员来说是一个很好的经验法则,但这是一个不好的 规则.
您需要考虑的是您的应用程序有多少用例.用户将以不受控制的方式(IE Web应用程序或桌面应用程序)与之交互的应用程序将需要比类似控制台应用程序更多的测试人员.
采用单个文件并检测其中的正则表达式模式的应用程序将需要比新操作系统更少的测试人员.
虽然这些是一般格言,但实际的建议是使用基于这些因素的某种近似公式
1)有多少(分区)用例?
我说区分用例是因为如果你包含状态变化和持久变量,那么程序中看似无关的部分可能会变成相关的.IE 2 + 2 = 4(1用例)2*2 = 4(第2用例).那是两个简单的运算符,两类用例.但是,如果你能add
那么multiply
,那么你就不能只检查add
和multiply
个人,必须检查他们在所有可能的排列.
在检查用例数时,请确保包含涉及命令链接的用例.
2)测试每一个需要多长时间?
这并不意味着(扩展计算器隐喻)只添加2 + 2并查看答案.您必须包括从崩溃中恢复所需的时间.如果答案不正确,您可能希望测试人员使用屏幕截图和有关如何重新创建错误的具体说明来记录错误.如果你没有给他们时间进行这种管理工作,那么你就可以假设你没有错误.如果我们假设,那么为什么要有测试人员;)
一个复杂的项目将拥有大量的用例和大量的开发人员,但它们不是一个保证相关性.您最好彻底检查您的用例,并做出有关需要多少测试人员的明智决定.
增加奖金.一旦彻底分解了应用程序,您可能会发现一些在设计阶段从未考虑过的用例,并在测试人员找到它们之前修复它们.