1

我在 BUnit 中有一个继承的 TestContext,我想添加 Testauthorization。

这不起作用:

using Bunit;
using Bunit.TestDoubles;
public class TestClass : TestContext
{
        [Fact]
        public void CompTest()
        {
            AddTestAuthorization();
        }
}

如果我使用带有样板代码的“普通”版本,就像遵循它一样。

这有效:

using Bunit;
using Bunit.TestDoubles;
public class TestClass
{
        public void CompTest()
        {
            TestContext ctx = new TestContext();
            ctx.AddTestAuthorization();
        }
}

所以我的问题是,如何在 BUnit 中使用继承的 TestContext 添加测试授权?

4

1 回答 1

1

由于AddTestAuthorization是一种扩展方法,因此您需要使用this它来获取它。它在 C# 语言中是一个不幸的限制。

例如:

using Bunit;
using Bunit.TestDoubles;
public class TestClass : TestContext
{
        [Fact]
        public void CompTest()
        {
            this.AddTestAuthorization();
        }
}
于 2021-06-07T11:15:42.593 回答