【问题标题】:BDD cucumber Web ServiceBDD黄瓜网络服务
【发布时间】:2017-12-09 10:53:26
【问题描述】:

我已经阅读了一些关于如何使用 cuuumber 实现 BDD 的文章,但我无法完全理解。

假设我有一项服务

/v1/picture?viewer=1&viewed=2&flag=1

对于这 3 个输入,我正在寻找输出为“1.jpg”

我在找

  1. 我们如何实现上面的? -- 即基于输入的输出
  2. 我们如何构建数据? -- mysql 数据基本上是存根

请提供示例和好的链接。 谢谢

【问题讨论】:

标签: java web-services cucumber bdd jolokia


【解决方案1】:

很难回答你的问题,因为没有太多关于你想要达到的目标的细节,但我会试一试。

那里有 3 个不同的输入: - 观众 - 是否已查看 - 一面旗帜。

因此,这些输入为场景提供了不同的上下文(给定)。

  • 给定一个 .jpg 查看器
  • 鉴于我已经看过图片两次
  • 鉴于图像已被标记

如何设置这些给定的数据完全取决于您。您可以对其进行硬编码,使用 mysql 数据或使用管理控制台输入真实数据等。没关系。你感兴趣的行为是当你应用 event 时会发生什么(When):

  • 当我检索到 v1 图片时

大概,您的上下文中提供的输入是相关的,并且会根据该输入提供不同的结果(然后)。

  • 然后我应该看到一个 .jpg 文件
  • 然后我应该会看到“已标记图像”横幅
  • 然后我应该会看到消息“查看了 2 次”

所以我可能会有这样的场景:

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

等等

我不知道您真正的服务在做什么,但希望这可以帮助您了解模式。尽量在场景中将行为的不同方面分开(更像是第二个而不是第一个),除非您需要举例说明组合。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-12
    • 1970-01-01
    相关资源
    最近更新 更多