Я выполняю следующий тест, написанный с использованием инфраструктуры SpecFlow, и когда тест достигает значения «Тогда», _accountController равен нулю. Почему?
[Binding]
public class RegisterUserSteps
{
private AccountController _accountController;
private ActionResult _result;
[When(@"the user goes to the register user screen")]
public void WhenTheUserGoesToTheRegisterUserScreen()
{
Console.WriteLine("When");
_accountController = new AccountController();
_result = _accountController.Register();
}
[Then(@"the register user view should be displayed")]
public void ThenTheRegisterUserViewShouldBeDisplayed()
{
Console.WriteLine("Then");
Assert.AreEqual("Register", _accountController.ViewData["Title"]);
}
}
ОБНОВЛЕНИЕ 1:
[Binding]
public class RegisterUserSteps
{
private AccountController _accountController = new AccountController();
private ActionResult _result;
[When(@"the user goes to the register user screen")]
public void WhenTheUserGoesToTheRegisterUserScreen()
{
_result = _accountController.Register();
}
[Then(@"the register user view should be displayed")]
public void ThenTheRegisterUserViewShouldBeDisplayed()
{
Assert.AreEqual("Register", _accountController.ViewData["Title"]);
}
}