我正在尝试使用 TDD 实现策略模式。每个策略项都实现一个接口(interface)。使用 TDD 执行此操作的最佳方法是什么?
您是否必须为接口(interface)的每个实现创建一个测试夹具,但在每个实现上测试相同的方法?
任何详细说明采取的方法的文章都将受到欢迎:)
最佳答案
我想我会为策略的每个实现编写一个单独的测试类。
您可以为所有这些创建一个抽象类来继承。这将帮助您确保为每个策略实现所有测试,但有一个小缺点,即您必须至少在每个测试类编译之前实现 stub 方法。
关于带有策略模式的 TDD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2965930/