通常,当使用依赖注入时,单元(和其他)测试负责创建/模拟被测系统的相关性并注入它们。向测试注入依赖关系
但是,有时测试本身具有依赖性,或者需要将依赖关系注入到SUT中,而它本身不能创建。例如,当测试与数据库交互的类时,测试需要知道连接字符串和目录名等,这些不能被硬编码,因为对于运行测试的每个人来说它们不一定相同。
那么,你会如何建议测试找出这些设置?做一些xUnit风格的测试框架提供了一种给测试用具提供依赖性的方法吗?在运行所有测试之前,测试类是否应该具有静态属性?该测试是否应该忽略DI实践并从全球某个地方去获取依赖关系?其他建议?