我一直在阅读有关单元测试和清洁架构的内容,并尝试实现涉及这两件事的东西。
据我了解,Clean 架构的结构是为了对 Interactor 对象的方法进行单元测试。
但是当用例类似于“创建一个文件,其内容是从某种格式的某些数据中计算出来的”时,我会感到困惑,因为它不是单一的(文件内容的计算和文件的创建,两者都是在用例中)
这是一些说明我的情况的伪代码:
/* We are in an Interactor (i.e. UseCaseObject)
* This method 1)computes fileContent and 2)writes it into a file.
*/
public void CreateFileFromData(someDataInSomeFormat) {
var parsedData = SomeParser.Parse(someDataInSomeFormat);
string fileContent = ???;
WriteFile(fileContent);
}
我的问题如下:
- Interactor 中定义的方法必须是单一的吗?(如,只做一件事)
- 必须对 Interactor 中定义的方法进行单元测试吗?(我看到一个函数,无论是否单一,作为可测试单元,如果不正确,请纠正我)
- 哪个类必须在 Clean 架构中进行 fileContent 的计算?