我有一个工厂类,它根据它接收的参数创建一个对象。该参数是一个标识符,告诉它应该创建哪个对象。 其第一步是使用数据访问层为对象提取信息。 下一步是对数据进行一些清理/转换。 最后,它创建所需的对象并将其返回。如何在无法访问状态时测试对象?
我想确保清理/转换步骤正常,但它返回的对象不会公开任何状态,所以我不知道如何轻松测试。
数据访问层和数据库结构无法更改,因为它们必须使用遗留代码。
对象被使用后,我可以在系统中进一步测试它,但这会导致难以维护的大测试。
我也想过暴露对象的状态,或将责任放在另一个类中,然后测试它,但这两个选项看起来像是在更改系统进行测试。
有关其他测试方法的想法吗?
分享一些代码。 –
您不能直接自己创建对象吗?如果没有工厂类,请调用清理/转换方法并检查结果? –
我无法做到这一点。工厂类的目的是封装对象的创建。这使我可以在必要时切换对象的创建方式。 – johnB