禁用对TestContext的依赖检查

本文关键字:依赖 检查 TestContext | 更新日期: 2023-09-27 18:13:32

我已经使用Spring创建了MSTest。在这个测试中,我使用TestContext。

[TestClass]
public class Test : AbstractDependencyInjectionSpringContextTests
{
    [TestMethod]
    public void Test()
    {
    }
    protected override string[] ConfigLocations
    {
        get
        {
            return new string[] { "~/Configuration/spring.config"};
        }
    }
    public TestContext TestContext { get; set; }
}

当我运行测试时,我得到以下错误:

通过对象属性表示的不满意的依赖关系'TestContext':设置该属性值或禁用依赖项检查对于这个对象…

如何禁用TestContext属性的依赖注入?

禁用对TestContext的依赖检查

默认情况下,Spring.net使用autowire By type来填充TestClass上的属性;但是,您可以通过强制字段级注入来覆盖这一点。当在测试中配置字段级注入时,您可能会发现我之前的答案很有用。我认为这是解决你的问题的办法。

禁用TestContext属性的依赖检查需要配置Test类,这基本上违背了最初使用AbstractDependencyInjectionSpringContextTests的目的。我认为这是一个正常的自动连接消息,在集成测试的上下文中有点误导。

你可以选择不使用依赖注入,不从AbstractDependencyInjectionSpringContextTests继承,但从它的基类AbstractSpringContextTests;但这样做的缺点是根本不做任何注入。