常见问题解答说明了区别。简而言之 AutoFixture使用反射来创建公共类型的“行为良好”实例。如果需要,它会自动生成其他类型的实例来填充构造函数的参数,并且还会为公共可写属性分配值。本质上,它只是使用所请求类型的公共API来实例化和填充它。它不会做任何你作为开发者无法手动完成的事情-它只是自动帮你完成。 相比之下,大多数动态模拟库都是从已知类型派生,以覆盖虚成员的行为。它们的目的是对被测系统(SUT)进行行为验证。 你可以将AutoFixture与Moq结合使用,将其转换为自动模拟容器。