java—在不同的测试类中测试类的方法

csga3l58  于 2021-07-03  发布在  Java
关注(0)|答案(1)|浏览(310)

我有一个orchestrator类,它有一个方法通过调用多个方法来实现功能:

public class Orchestrator {
    public void doImportantStuff(){
       firstDoThis();
       thenDoThis();
       finallyDoThis();        
    }

    private void firstDoThis(){
       ...
    }

    private void thenDoThis(){
       ...
    }

    private void finallyDoThis(){
       ...
    }
}

我的问题是,对于从doimportantstuff()调用的所有方法,我都有很多案例要测试,所以我计划为每个方法编写单独的测试类。这是我应该避免的,还是听起来不错?

mftmpeh8

mftmpeh81#

这实际上取决于您将要编写的测试类型。单元测试假设您单独测试每个方法,但集成测试将测试一体机。
假设这些方法确实包含一些业务逻辑,我建议为每个方法编写一组单元测试(可能将它们移动到不同的类中以符合单一责任原则)。
在确定所有方法都正常工作之后,就应该编写集成测试并测试逻辑如何集成(例如,特定的调用顺序)。顺便说一句,这里可能是有用的一些模拟工具,因为你不会再测试每一个方法。

相关问题