【发布时间】:2021-12-10 12:56:12
【问题描述】:
几年前,我们公司决定告诉 QA 团队开始使用 Cucumber 和 bdd。
问题是人们开始将我们的手动测试直接转化为 bdd 场景。这导致步骤以命令式而不是声明式的形式编写,并且还有许多 when 和 then 步骤。
我的任务是研究如何改进我们编写它们的方式,但我认为这是不可能的。
在我们公司,几乎所有测试都是完整的客户旅程,这意味着几乎所有测试都经过完整的预订流程,并且我们的断言发生在最后,例如。如果我们的测试是预订有额外费用的航班,您需要转到流程的末尾以确保已预订。
我们可以有一个场景,我们将部分流程放在后台,并在场景中测试额外预订,但总是要求在后台部分测试大量不同的数据,所以这是不可能的。由于产品的工作方式,我们也无法使用我们的测试数据预加载数据库。
此外,除了 QA 之外,几乎没有其他团队支持转换为 BDD。没有任何需求是用 BDD 编写的,除了测试人员之外,没有人会查看我们的功能文件。
在我看来,我们应该使用数据驱动测试来实现我们的目标,但我很想知道其他人的想法
【问题讨论】:
-
这是一个概念性问题,这意味着它不适合这个网站。行为驱动开发不是“质量保证”。这是一个“产品的东西”。 QA 测试人员不应该编写场景,因为场景就是需求。产品人员应该与利益相关者一起编写场景。查看 BDD at Automation Panda 了解更多信息,作为支持 QA 测试人员编写场景的对立点,您也可以在同一站点阅读 Behavior-Driven Blasphemy。
标签: automated-tests bdd qa data-driven-tests