我已经阅读了一些关于我们如何使用 cuuumber 实现 BDD 的文章,但我无法完全理解。
可以说我有服务
/v1/picture?viewer=1&viewed=2&flag=1
对于这 3 个输入,我正在寻找输出为“1.jpg”
我在寻找
- 我们如何实现上面的?-- 即基于输入的输出
- 我们如何构建数据?-- mysql 数据基本上是存根
请提供示例和良好链接的帮助。谢谢
我已经阅读了一些关于我们如何使用 cuuumber 实现 BDD 的文章,但我无法完全理解。
可以说我有服务
/v1/picture?viewer=1&viewed=2&flag=1
对于这 3 个输入,我正在寻找输出为“1.jpg”
我在寻找
请提供示例和良好链接的帮助。谢谢
很难回答你的问题,因为没有太多关于你想要达到的目标的细节,但我会试一试。
您在那里有 3 个不同的输入: - 查看器 - 无论是否被查看 - 一个标志。
因此,这些输入为场景提供了不同的上下文(给定)。
如何为这些给定设置数据完全取决于您。您可以对其进行硬编码,使用 mysql 数据或使用管理控制台输入真实数据等。没关系。您感兴趣的行为是应用事件时发生的情况(When):
据推测,您的上下文中提供的输入是相关的,并且会根据该输入提供不同的结果(然后)。
所以我可能有这样的场景:
Given a .jpg viewer
And an image that's been viewed 3 times
When I retrieve the v1 picture
Then the service should give me 1.jpg
And I should see the message "Viewed 3 times"
Given a .png viewer
When I retrieve the v1 picture
Then the service should give me 1.png
等等
我不知道您真正的服务在做什么,但希望这可以帮助您了解模式。尝试在场景中保持行为的不同方面分开(更像是第二个而不是第一个),除非您需要举例说明组合。