我希望Maven在单元测试期间使用具体类的不同实现,但编译测试阶段会抱怨重复的类名。 Ant似乎没有问题。我怎么能这样做?
一些背景知识。我有一个庞大的遗留系统。它包含一个非常大的讨厌的类,它充满了静态方法,系统中的每个其他类都使用它。设计很糟糕但这是另一个问题。我们将这个类命名为com.mycompany.Monster。为了进行单元测试,我们创建了另一个com.mycompany.Monster实例,该实例包含大部分静态方法,然后使用存根实例而不是官方实现编译/链接我们的测试类。 Michael Feather的“有效使用遗留代码”中提到了这种技术,他将其称为“链接替换”。
正如我所说Ant处理这个很好,但Maven在遇到重复类时会停止。