1
我創建了一個MVC應用程序,並且我已經設置了Roger Martin's sqlite Providers來代替默認提供程序。我很好奇我會如何去測試這些單元。單元測試MVC應用程序中的Sqlite成員提供程序
下面是一個精簡的方法,有很多驗證,其中只有一個仍然存在。除此之外,我想寫測試,以確保如果用戶名已被佔用,則無法註冊,並且可以註冊用戶名是否空閒(以及其他驗證通過)等。
我可以看到單元測試可以確定成功或失敗,但不是因特定原因失敗,除非我檢查輸出MembershipCreateStatus參數,但我不確定是否有更好的方法。此外,我需要給對象providerUserKey?任何見解都會非常有幫助。
public override MembershipUser CreateUser(string username, string password, string email, string passwordQuestion, string passwordAnswer, bool isApproved, object providerUserKey, out MembershipCreateStatus status)
{
//some validations, and then:
MembershipUser u = GetUser(username, false);
if (u == null)
{
///register user
status = MembershipCreateStatus.Success;
return GetUser(username, false);
}
else
{
status = MembershipCreateStatus.DuplicateUserName;
}
return null;
}
你們是不是單元測試中SQLite的成員資格提供或控制器的代碼? – 2009-12-11 15:55:46
現在,SQLite成員資格提供程序。我想確保帳戶註冊因特定和有效的原因而被拒絕。我還沒有開始編寫控制器,但是我沒有看到爲它編寫測試的問題。 – splatto 2009-12-11 16:15:19