如何处理宁静的角落/边缘/错误情况

时间:2018-05-20 17:53:24

标签: serenity-bdd cucumber-serenity serenity-js

我喜欢专注于业务场景的想法。但是,作为开发人员,我还希望错误案例能够进行自动非回归测试。

例如,在电子商务功能中,会有一个场景

  

詹姆斯用他的信用卡支付   詹姆斯应该看到购买成功了

但是他的信用卡无效或他的银行拒绝交易的情况如何呢?这些方案与实施细节密切相关。

我不知道如何在Serenity哲学中处理这些场景的自动测试。如果我写场景,我将不得不提到当前的实现细节。在阅读Serenity周围的文学时,我觉得它只是为了测试快乐的道路,因为这是商业人士所关心的。然而,在现实世界中,错误情况和更复杂的流程是应用程序的重要部分,并从自动化测试中受益。

你能帮我理解我应该如何测试这些场景吗?谢谢!

1 个答案:

答案 0 :(得分:1)

我认为你的问题与BDD / Gherkin有关,而不是与Serenity有关。 BDD绝对限制接受标准到快乐的日子路径 - 我甚至会说这是一种反模式。如果企业对消极路径(通常是负面路径)感兴趣,那么它应该是一个验收标准。例如:

Scenario: James has insufficient funds on his account Given James has a $1000 limit on his credit card And he has already spent $900 When he attempts to purchase a meal costing $150 Then the transaction should be refused