BDD 如何捕获系统交互(持久性、API 调用、通知等)?
How does BDD capture System Interaction (Persistence, API Call, Notification etc)?
在用BDD准备测试用例的时候有点迷茫
这是我想要的用 Gherkin 语法表达的要求。
Given A user is subscribed to the system
When A user try to subscribe again
Then System should send him a notification "Subscription unsuccessful"
and Admin Portal User should view related KYC Fields as blank
内部系统交互应该如何体现在BDD中?
例如:
a) 每一步之后,都需要在MongoDB
中坚持
b) 在 KYC API 调用
之前,需要调用一些内部 API 调用作为预验证
c) 进程结束后需要向用户发送通知
通知应该被视为系统行为还是业务行为?
持久化、调用一个API等应该如何体现在BDD中?
我是不是漏掉了什么?
有人可以帮忙吗?
作为系统行为或业务行为的通知在很大程度上取决于被测系统。
如果场景的全部意义在于确保发送通知,则这是一种业务行为。基本上都是关于你的 Then
.
由于您的场景断言通知已发送,我会class将其确认为业务行为,并且您的场景完全有效。
BDD 测试不一定需要用户界面。它可能涉及直接调用 API 并对它们的结果进行断言。我什至使用 Gherkin 在 class 上为单个方法编写了单元测试。它恰好用业务术语说明了该方法的作用。这正是 BDD 的设计目的。
在用BDD准备测试用例的时候有点迷茫
这是我想要的用 Gherkin 语法表达的要求。
Given A user is subscribed to the system
When A user try to subscribe again
Then System should send him a notification "Subscription unsuccessful"
and Admin Portal User should view related KYC Fields as blank
内部系统交互应该如何体现在BDD中?
例如:
a) 每一步之后,都需要在MongoDB
中坚持b) 在 KYC API 调用
之前,需要调用一些内部 API 调用作为预验证c) 进程结束后需要向用户发送通知
通知应该被视为系统行为还是业务行为?
持久化、调用一个API等应该如何体现在BDD中?
我是不是漏掉了什么?
有人可以帮忙吗?
作为系统行为或业务行为的通知在很大程度上取决于被测系统。
如果场景的全部意义在于确保发送通知,则这是一种业务行为。基本上都是关于你的 Then
.
由于您的场景断言通知已发送,我会class将其确认为业务行为,并且您的场景完全有效。
BDD 测试不一定需要用户界面。它可能涉及直接调用 API 并对它们的结果进行断言。我什至使用 Gherkin 在 class 上为单个方法编写了单元测试。它恰好用业务术语说明了该方法的作用。这正是 BDD 的设计目的。