测试抽象类具体方法

时间:2008-09-19 19:49:48

标签: c# .net unit-testing

我如何为抽象类的具体方法设计和组织测试?特别是在.NET中。

6 个答案:

答案 0 :(得分:9)

您必须创建一个实现抽象方法的子类(使用空方法),但不是具体的子类。此子类应仅用于测试(它永远不应该进入您的生产代码)。只需忽略单元测试中重写的抽象方法,并专注于具体方法。

答案 1 :(得分:3)

使用Rhino Mocks,它可以在运行时生成抽象类的实现,并且可以调用非抽象方法。

答案 2 :(得分:1)

首先想到的是在具体的子类中测试这些方法。

答案 3 :(得分:0)

任何理由不仅仅是在测试其中一个实例时包含它?

如果这不起作用,你可能只是为了测试而创建一个没有自己独特功能的子类。

答案 4 :(得分:0)

我总是使用Stub / Mock对象

答案 5 :(得分:0)

您必须定义并创建一个继承自抽象的具体测试类。通常它会是一个光垫片,除了通过呼叫之外什么都不做。