2
나는 다음과 같은 라인 변경 :MVC 2에서 사용자 변경 MockHttpContext가 Test를 중단합니까?
private readonly IPrincipal _user =
new GenericPrincipal(new GenericIdentity("someUser"), null /* roles */);
private readonly IPrincipal _user =
new GenericPrincipal(new GenericIdentity("realUser"), null /* roles */);
로하고 다음과 같은 시험은 부러졌지만, 나는 왜 확실하지 않다 나는 그것을 추적하는 방법을 잘 모르겠습니다. 나는
[TestMethod]
public void ChangePassword_Post_ReturnsRedirectOnSuccess()
{
// Arrange
AccountController controller = GetAccountController();
ChangePasswordModel model = new ChangePasswordModel()
{
OldPassword = "goodOldPassword",
NewPassword = "goodNewPassword",
ConfirmPassword = "goodNewPassword"
};
// Act
ActionResult result = controller.ChangePassword(model);
// Assert
Assert.IsInstanceOfType(result, typeof(RedirectToRouteResult));
RedirectToRouteResult redirectResult = (RedirectToRouteResult)result;
Assert.AreEqual("ChangePasswordSuccess", redirectResult.RouteValues["action"]);
}
이 작동하고 위의 테스트를 끊을 realUser에 결과 someuser을 변경하는 이유를하는 것은 매우 도움이 될 것입니다 방법에 대한 설명을 TDD에 새로운 오전.
구체적으로 무엇이 고장 났습니까? 테스트에서 오류가 발생했거나 실패한 것이 실패 했습니까? 또한 암호 변경 작업이 기본 제공 암호 작업과 동일합니까? –
이 어설 션이 실패했습니다. Assert.IsInstanceOfType가 실패했습니다. 예상되는 형식 :. 실제 유형 : . 암호 변경 작업은 기본적으로 제공되는 것입니다. 내가 변경 한 유일한 것은 문자열 "someUser"에서 "realUser" –
Xaisoft