NUnit 3:OneTimeSetUp不会触发

Tom*_*Tom 7 .net nunit-3.0

在NUnit 3中,他们用"OneTimeSetUp"替换了属性"TestFixtureSetUp".然而,它实际上似乎没有用,除非我是一个完全白痴.

这是我的代码如下:

[TestFixture]
public class DiskServiceTests
{
    private readonly Mock<IDriveInfoWrapper> _driveInfoWrapper = new Mock<IDriveInfoWrapper>();
    private IDiskService _diskService;

    [OneTimeSetUp]
    public void Init()
    {
        _diskService = new DiskService(_driveInfoWrapper.Object);
    }

    [Test]
    public void GetDriveInfo_ShouldReturnDriveInfo()
    {
        // Act
        var result = _diskService.GetDriveInfo();

        // Assert
        Assert.IsNotNull(result);
    }
}
Run Code Online (Sandbox Code Playgroud)

测试将开始,但它永远不会进入Init(),因此_diskService为null.我在这里做错了什么,或者这可能是一个错误?

小智 7

Resharper不支持NUnit 3.0.您应该安装NUnit适配器并使用VS来运行测试.这对我有所帮助.更多细节,你可以在这里找到 https://github.com/nunit/nunit/issues/1089