【问题标题】:how to summarise and navigate BDD stories when you have so many?当你有这么多的 BDD 故事时,如何总结和导航?
【发布时间】:2015-03-06 23:43:20
【问题描述】:

我为现有系统继承了许多 BDD 故事/场景(450+ 并且还在上升):more info。这些故事是使用文件系统文件夹组织的:

C:\specifications
   |
   + myproject
     |
     |- admin stories
     |  |- account_management.story
     |  +- finance_management.story
     |
     +- customer stories
        |- pay_bils.story 
        +- update_details.story

故事太多了,试图通过阅读故事文本文件来理解功能就像试图通过阅读数千行源代码来理解系统的技术架构。

我尝试使用unix 命令来总结故事,但这仍然不能帮助我浏览故事。例如,即使叙述跨越多行,以下命令也会打印出故事文件名和叙述:

find . -name *.story -exec ls "{}" \; -exec sed -n '/^Narrative/,/^$/p' {} \;

产生类似于以下内容的输出:

...

./stories/basket/basket.story
Narrative:
In order to buy goods
As a customer
I want to add items to my basket

...

此问题与this one 类似,但有一些关键区别:

  • 这个问题的重点是总结和浏览故事,而不是漂亮的印刷。
  • 需要放大和缩小,从高级到详细再返回。
  • 任何需要了解故事的人都可以进行导航,而不仅仅是企业。

【问题讨论】:

    标签: bdd user-stories atdd


    【解决方案1】:

    我会根据文件提供的特定功能命名每个文件,然后只解析文件名。

    例如,您可能有:

    • pay bills.story
    • 更新帐户 details.story
    • 将商品添加到购物篮.story

    如果您想变得非常聪明,那么您可以将它们分类到可以做这些事情的人的文件夹中。所以当你解析它们时,你最终会得到:

    管理员可以:

    • 创建新帐户
    • 禁止帐户

    财务经理可以:

    • 发出提醒
    • 覆盖账单
    • 重新发布声明

    客户可以:

    • 支付账单
    • 更新详情
    • 将物品放入篮子
    • 购买物品

    这为您提供了无需说明它们的特定示例的功能,并且与查看完整的叙述文本相比,浏览量要少得多。

    【讨论】:

    • +1。我按功能对故事进行分组,例如一个名为“Accounts”的文件夹,然后是一个名为“Deleting Accounts”的子文件夹(或一个 DeletingAccounts.feature 文件,如果够用的话),其中包含我需要充实规范的尽可能多的 .feature 文件。
    【解决方案2】:

    我使用 project 将我的故事导出为小黄瓜格式,然后使用 project 处理它们以创建一些非常好的 html 输出。

    【讨论】:

      【解决方案3】:

      我创建了一个要点来重新格式化我的 Gherkin 测试。在其中,我描述了我们如何布置目录结构(这对我很有效):

      https://gist.github.com/drmikecrowe/a3f8a31f2c7f2de1d078

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-02-08
        • 1970-01-01
        • 2018-12-21
        • 1970-01-01
        相关资源
        最近更新 更多