我的老板计划使用我们持续构建的指标(每次提交都要构建并运行测试)作为我们绩效评估的一部分(在“质量”指标中)。对我来说,这似乎是个坏主意,但我想知道是否有人研究过此方法或以前曾尝试过此方法。
我的想法是,由于担心测试将失败,因此我们的开发人员将不会像他们本来那样进行尽可能多的测试。我觉得他正在将一种有价值的开发人员工具变成一支棍子,以击败开发人员。
明显的反论点是,这将促使人们在做出承诺之前更加谨慎,从而提高他们的素质。
我在这里基地吗?请抛开我们是否应该进行绩效评估的问题,该问题已在其他地方得到解答。
8
任何可以玩的系统都是性能评估的可怕输入。
—
史蒂夫·杰克逊
每个人都可以选择不测试吗?
—
JeffO 2011年
@Steve,还有无法玩的“系统”,可以让您一览全局的一小部分。要真正准确地跟踪性能,需要做一些腿部工作。
—
maple_shaft
请注意,有些事情在开发人员的机器上运行良好,但在构建服务器上却失败(意外依赖外部jar,在Linux机器上使用错误的/和\等)。构建服务器的主要原因是抓住这些东西,而不是骚扰任何未首先测试它们的人。换句话说,这是一个坏主意。
跟进:开始执行此操作后,我发现最大的问题与其他工程师无关,也不愿意编写适当的测试,而是因为我们现有的测试确实非常不稳定,因此每次提交的机会都很大打破提交人的过错。这个因素使每个人的测试热情受到打击,远远超出了绩效评估的任何效果。
—
迈克尔·科恩