对您实现的特性进行手动测试显然是个坏主意。但是自动化功能测试呢?在我看来,自动化测试与单元测试更相关,为您创建的特性创建自动化测试是可以的(尽管我们团队中有人试图游说开发人员为他们实现的特性创建自动化测试的做法)。我说的对吗?
从评论中
没有上下文,问题本身就没有意义。
我之所以问这个问题,是因为我们团队中提到的人说,如果有其他人可以在一个团队中创建自动化测试,那么绝对禁止对您实现的特性进行自动化测试。她说,这是一个普遍的事实,这是写在每一本教科书的测试。在我看来,这似乎不是一个普遍的事实,我想揭穿这个神话。所以我才问这个问题。
相反的论点是,我们有自动化测试,不是检查开发人员是否正确地实现了所有功能,而是确保在添加新功能时,旧功能不会中断。
我们的团队由4名开发人员、2名手动测试人员和1名自动化测试人员组成。有时自动化测试人员没有时间完成所有自动化任务,开发人员帮助他编写脚本。
我明白你为什么说我的问题缺乏上下文,但我认为提供所有这些细节会使我的问题过于局限。
发布于 2014-08-12 11:16:36
根据我的经验,答案是肯定的,也是否定的。
显然,开发人员可以为他/她实现的特性编写自动化测试。开发人员是否应该编写这些测试是另一个论点,它取决于所编写的自动化测试的类型、开发风格、更好地利用开发时间来执行哪项任务,当然还有办公室政治(唉,这是无法逃脱的)。
根据我的经验,在以下情况下,开发人员应该为其特性编写自动测试:
在以下情况下,开发人员可能不是为其特性编写自动化测试的最佳人选:
不管是谁编写的自动化测试:
开发人员“不能”测试他们自己的代码的论点源于注意盲,在这种情况下,通过开发熟悉代码会导致潜在的问题被忽略。其他人审查他们的测试将减少影响,在一个不同的项目工作了一段时间后会返回到一些东西。
所以,是的,程序员在为他们开发的特性创建自动化测试时会有注意力盲目性,但这并不意味着他们绝对不应该创建这些测试。它们可能仍然是创建它们的最佳人选(例如,如果开发团队的其余部分完全被占用,测试团队主要是手动测试人员,那么编写自动化的最佳人选就是编写该特性的开发人员)。
发布于 2014-08-10 08:01:47
我工作过的产品质量最高,产品缺陷最少,没有QA团队。开发人员负责端到端的服务,质量期望是明确的。当未经充分验证而匆忙通过更改时,无论是QA还是Dev,都会出现问题。
开发人员通常处于自动化测试的最佳位置,并且还可以对实现进行小的更改,以使测试更容易。基于这些原因,我建议最好的实践是让测试人员协助识别哪些测试用例提供了最大的价值并指定它们的参数。然后,开发人员可以实现这些测试用例。
发布于 2014-08-11 17:47:53
开发人员不应该针对自己的代码进行的活动实际上是测试设计,而不是测试执行或测试自动化。如果开发人员正在进行他们自己的测试设计,那么根据定义,任何开发人员忘记想到的东西都不会被测试;单独的测试人员可以想到开发人员没有想到的事情。
如果开发人员正在自动化由其他人编写的测试用例,则不涉及冲突。
https://sqa.stackexchange.com/questions/9411
复制相似问题