我通过方法链创建了一些小流利的接口。他们通常会调用一些从Web服务/数据库获取数据的存储库。如何对使用Fluent界面的代码进行单元测试?
我应该如何去使用流利接口的单元测试方法?
Public IEnumberable<Computer> FindComputers(string serialNumber)
{
return Computers.FindBySerialNumber("YBCX00900")
.AttachConfiguration()
.EnsureAllComputersHaveConfiguration();
}
我可以单元测试流畅界面的各个组成部分,但如果我想单元测试上面我应该怎么做FindComputers方法?
- 使用具体实现流畅的界面,并且写上库类
- 模拟流利的接口本身 期望和设置该
- 测试只有一口流利的接口本身的预期,而不是FindComputers ()方法
我想找到一个易于维护的方法。
谢谢,你是对的,这个例子很糟糕,我已经把FI分解成一个用于查询,另一个用于对返回的数据执行操作。 我发现最简单的方法是单元测试FI,然后使用FI和具体实现的单元测试方法。只是测试,返回所需的结果。 试图模拟FI只会使测试过于脆弱。 – Andronicus 2009-08-19 22:15:37