Я пишу тесты для проверки форм Infopath для открытия в управлении формами, мой метод тестирования такой:
[TestMethod]
public void Validate_OpenInfopathInFormControl()
{
Helper.OpenForm();
//Other Code
}
Я написал вспомогательный класс как
public class Helper
{
public static void OpenForm()
{
//Code to Open Form
}
}
Но каждый раз, когда я выполняю этот код, это дает мне:
Метод тестирования InfoPathTest.TestAPI.Validate_OpenInfopathInFormControl выдал исключение: System.TypeInitializationException: Инициализатор типа для InfoPathTest.Helpers.Helper выдал исключение. ---> System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта..
Когда я пытаюсь выполнить отладку, происходит сбой, когда необходимо инициализировать вспомогательный класс. Это действительно съедает мою голову, есть ли какое-нибудь решение для этого?
Вот полный вспомогательный класс:
namespace InfoPathTest.Helpers
{
public class Helper
{
//This is the form i need to OPEN
private static MainForm f = new MainForm();
private static bool _isOpen = false;
public static bool isOpen
{
set { _isOpen = value; }
get { return _isOpen; }
}
public static void OpenForm()
{
try
{
f.Show();
}
catch (Exception ex)
{
throw ex;
}
_isOpen = true;
}
public static void CloseForm()
{
f.Hide();
}
}
}
public static Helper()
), поскольку что-то там вызывает исключение - person Rob   schedule 21.08.2010