我正在为 Windows 窗体应用程序的一部分编写 NUnit TextFixture。文件中的一些类派生自 UI 组件类,如下所示:
[TestFixture]
public class MainFormTest : PersistenceTestBase // Base class here is not a form
{
class TestMainForm : MainForm // MainForm inherits from Form
{
public new String SomeMethod()
{
// Some MainForm private method overridden to expose it to my test fixture
}
}
private TestMainForm mainForm;
[TestFixtureSetUp]
public void TestFixtureSetUp()
{
mainForm = new TestMainForm();
}
[Test]
public void TestMainFormDoesXYZ()
{
// Perform unit testing...
}
}
然而,我遇到的一个烦恼是,由于这些类继承自 UI 组件类,当我在解决方案资源管理器中双击我的单元测试文件时,Windows 会打开设计器窗口。其中,由于它不是“真正的”UI 元素(而是一个测试类),因此它显示为损坏的 UI(取决于我如何安排文件,消息如“无法为该文件显示设计器,因为没有任何类在其中可以设计”如图所示)。有没有办法抑制这种行为,或者我总是必须右键单击这个文件并“查看代码”?