我想知道我应该怎样写单元测试。有一些类很难写单元测试。例如,我正在编写一些处理音频的程序。用于从麦克风捕获音频的类和播放音频到扬声器的类,我如何为这些类写单元测试?我不能得到这些类的输出和输入,所以几乎不可能测试它们?我可以做的唯一的测试是吸气和安静,这些无聊的测试。所以问题是,单元测试的指导线是什么?而我应该怎么处理这些课堂难以测试?
使用单位测试是有意义的 – 不要达到100%的覆盖范围。主要的方针是思考而不是适用教条或懒惰。
话虽如此:如果你有自己很难测试的课程,尽量减少他们要做的事情。隔离不可测试的代码并将其分成一个接口。然后测试使用该API针对模拟或存根的逻辑。