1
2
对于数据DSL YAML 他是个优秀的候选人。以下是维基百科的一个示例:
然而,如果我们谈论的是 单元 -测试通常更简单和可读性更高,通过手工构造必要的对象,并在适当的位置进行构造函数和属性赋值。这是因为单元测试本质上高度关注于某些代码(单元),而创建这样的数据基础设施应该不难 足够测试了。在单元测试中对半完整实体进行操作是可以的,不要费心构造与这个具体测试无关的数据。 对于功能测试,YAML非常好。 |
2
1
首先,我要看看我选择的语言是否足够丰富,可以构建我的DSL。C#应该很容易处理你的案子:
虽然没有那么漂亮,但确实可以忍受,以至于我很难证明定制DSL的额外努力是合理的。
还要注意Expire是用字符串初始化的,但它显然是一个日期。这对于DSL习语来说是完全合理的,因为
|
3
0
当谈到创建测试数据时,我受到rubyonrails的启发,这是另一个答案中提到的YAML fixture,但我也看到了一种使用工厂的方法,它可以帮助您摆脱一些重复性和僵硬性。看看这个 Railscasts 158: Factories not Fixtures ,它可能会给您一些设计DSL的想法。 |