那里有任何BDD成功案例吗?

Dmi*_*ruk 5 .net c# bdd nbehave

在写了一篇关于BDD 的小文章之后,我从人们那里得到了一些问题,询问是否有任何大规模使用BDD的案例(特别是NBehave).

所以我的问题是社区:你有一个成功使用BDD的项目吗?如果是这样,你获得了什么好处,哪些更好?你会再做BDD吗?你会推荐给其他人吗?

Rin*_*lin 4

我们在不同场景(开源和 ND 项目)的代码级别使用了一些 BDD。

  1. 告诉 MVC 场景中的视图,从用户接受什么样的输入(.NET 中的 DDD 和规则驱动的 UI 验证

    result = view.GetData(
      CustomerIs.Valid, 
      CustomerIs.From(AddressIs.Valid, AddressIs.In(Country.Russia)));
    
    Run Code Online (Sandbox Code Playgroud)
  2. 告诉服务层关于异常处理行为(ActionPolicy被注入到装饰器中):

    var policy = ActionPolicy
      .Handle<WebException>()
      .Retry(3);
    
    Run Code Online (Sandbox Code Playgroud)

使用这些方法极大地减少了代码重复,使代码库更加稳定和灵活。此外,由于复杂细节的逻辑封装,它使一切变得更加简单。