2015-11-25 14 views
5

Trong NUnit 3, chúng đã thay thế thuộc tính "TestFixtureSetUp" bằng "OneTimeSetUp". Tuy nhiên, nó không thực sự có vẻ làm việc, trừ khi tôi là một thằng ngốc hoàn toàn.NUnit 3: OneTimeSetUp không kích hoạt

Đây là mã của tôi dưới đây:

[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); 
    } 
} 

thử nghiệm sẽ bắt đầu, nhưng nó không bao giờ đi vào Init(), và do đó _diskService là null. Tôi có làm gì sai ở đây không, hoặc đây có phải là lỗi không?

Trả lời

6

NUnit 3.0 không được hỗ trợ bởi Resharper. Bạn nên cài đặt bộ điều hợp NUnit và sử dụng VS để chạy thử nghiệm của bạn. Điều đó đã giúp tôi. Thêm chi tiết bạn có thể tìm thấy tại đây https://github.com/nunit/nunit/issues/1089

+0

Cảm ơn bạn đời. Tôi không biết rằng thuộc tính dựa vào Resharper để hoạt động. Tôi sẽ để lại các thuộc tính như là 'TestFixtureSetUp' cho đến bây giờ, vì nó đặt câu hỏi liệu máy chủ xây dựng của chúng tôi có thể chạy thử nghiệm đúng cách hay không. – Tom

Các vấn đề liên quan