【发布时间】:2016-03-03 13:58:13
【问题描述】:
我正在编写 Gherkin 场景,遇到了一个问题,即用户故事适用于我们正在设计的系统中的多个角色,但存在细微差别。
根据我的阅读,首选的方法是从这个角度编写Feature文件:
作为[角色/角色]
我想要[功能]
这样[好处]
这样做的问题是,我最终会为每个角色编写或多或少相同的场景,这将导致大量重复。
举一个具体的例子,在招聘应用程序中,不同的角色需要能够查看在公司注册的申请人实体。唯一的区别是,根据您拥有的权限级别(即您的角色),即执行级别、区域经理、区域经理、分公司经理、分公司员工、外部客户,需要对集合应用某种过滤您可以查看的申请人数。
解决此问题的一种方法是围绕实体(申请人)而不是角色来定位特征/用户故事,即
功能
作为应用程序的用户(NB。我们不提及特定的角色,而是指“通用”用户角色)
我希望能够查看申请人
这样我就可以履行我的工作职责
场景
当我请求查看申请人时
然后我将根据我的权限查看允许我访问的申请人
这个场景简洁地捕捉了用户故事。但是,我想测试不同的用例,即分公司经理只能查看分配给他的分公司的申请人,区域经理只能查看分配给他的地区的申请人,客户只能查看他们公司工作分配的申请人。
解决此问题的最佳方法是什么?您认为围绕实体而非角色编写用户故事的方法是否可以接受?
【问题讨论】:
标签: bdd acceptance-testing gherkin scenarios