Tôi đang nhìn vào một số mã kiểm tra sử dụng NUnit, mà kế thừa từ một lớp cơ sở có chứa một [Setup] thuộc tính:NUnit và [Setup] trong các lớp cơ sở
public class BaseClass
{
[SetUp]
public void SetUp()
{
//do something
}
}
[TestFixture]
public class DerivedClass : BaseClass
{
[SetUp]
public void SetUp()
{
//do something else, with no call to base.SetUp()
}
//tests run down here.
//[Test]
//[Test]
//etc
}
Các lớp có nguồn gốc chắc chắn sẽ cần việc được thực hiện trong phương thức SetUp() của lớp cơ sở.
Tôi có thiếu thứ gì đó hay phương thức SetUp() trong lớp cơ sở không được gọi khi kiểm tra của lớp dẫn xuất được chạy? Có điều gì đó đặc biệt với thuộc tính [SetUp] đảm bảo rằng một thuộc tính sẽ được gọi trước thuộc tính kia không?
Chỉ là một gợi ý khác cho bất kỳ ai đấu tranh với vấn đề này: Đảm bảo phương thức 'SetUp' của bạn là công khai. R # không cảnh báo bạn nếu chúng là riêng tư nhưng chúng sẽ không chạy. – lex82
Câu trả lời cập nhật cho NUnit 2.5+ tại đây: http://stackoverflow.com/a/22099351/532647 –