Java 如何模拟对象?

Java 如何模拟对象?,java,Java,如果要测试的类是抽象的,如何模拟对象进行测试?您不能从中实例化吗?正如Paddy提到的,您确实想要测试一个具体的类 但是,如果您想测试抽象类提供的功能,通常的方法是使用提供具体类的抽象方法创建抽象测试用例,然后在抽象WhateVertTestCase中测试公共功能 请参阅以获取一些示例。正如Paddy提到的,您确实想要测试一个具体的类 但是,如果您想测试抽象类提供的功能,通常的方法是使用提供具体类的抽象方法创建抽象测试用例,然后在抽象WhateVertTestCase中测试公共功能 有关一些示例

如果要测试的类是抽象的,如何模拟对象进行测试?您不能从中实例化吗?

正如Paddy提到的,您确实想要测试一个具体的类

但是,如果您想测试抽象类提供的功能,通常的方法是使用提供具体类的
抽象
方法创建
抽象
测试用例
,然后在
抽象WhateVertTestCase
中测试公共功能


请参阅以获取一些示例。

正如Paddy提到的,您确实想要测试一个具体的类

但是,如果您想测试抽象类提供的功能,通常的方法是使用提供具体类的
抽象
方法创建
抽象
测试用例
,然后在
抽象WhateVertTestCase
中测试公共功能


有关一些示例,请参见。

模拟是创建接口或抽象类的模拟实现,很少是具体类的模拟实现。您可以在运行时使用模拟框架进行这些模拟:


    • 模拟是创建接口或抽象类的模拟实现,很少是具体类的模拟实现。您可以在运行时使用模拟框架进行这些模拟:


      如果您想测试抽象类的通用实现,那么您应该在测试子系统中创建一个虚拟的具体实现,并对该类的通用方法进行单元测试


      另一方面,如果需要传递对抽象类的引用,那么正如Bozho所建议的,应该使用模拟框架。我最喜欢的是。

      如果您想测试抽象类的通用实现,那么您应该在测试子系统中创建一个虚拟的具体实现,并对该类的通用方法进行单元测试


      另一方面,如果需要传递对抽象类的引用,那么正如Bozho所建议的,应该使用模拟框架。我最喜欢的是。

      为什么要测试抽象类?当然,出于测试目的,您需要检查一个具体的实现。为什么要测试一个抽象类?当然,出于测试目的,您需要检查一个具体的实现。让我补充一下,可以使用附加代码模拟抽象类。例如,jMock使用cglib()来模拟抽象的。。关于jmock。。这是否意味着jmock为您创建了一个mock对象的实例myObject=context.mock(myObject.class)?让我补充一下,可以使用附加代码模拟抽象类。例如,jMock使用cglib()来模拟抽象的。。关于jmock。。这是否意味着jmock为您创建了一个mock对象的实例myObject=context.mock(myObject.class)?你能举个例子,如何处理一个有十几个抽象方法的抽象类型吗?在本例中,您“AbstractWhateverTestCase”应该为它们提供实现吗?你认为这是个好主意吗?你能举个例子,如何处理一个有十几个抽象方法的抽象类型吗?在本例中,您“AbstractWhateverTestCase”应该为它们提供实现吗?你认为这是个好主意吗?