我有一个ASP.NET页面,它是许多其他派生页面的基础,并且包含以下受保护的方法。
我很确定这段代码有很多问题(欢迎提出改正意见),但我的主要目标是开始为整个项目实施一些测试。我决定从小处着手-一个方法一次。我首先尝试创建一个新的测试项目,但由于SetupApproval方法是受保护的,所以我无法访问它。我的下一步尝试是将TestMethod放在基本页面中,但那样就没有运行测试的方法了。
最后,我正在使用Visual Studio 2008的默认测试框架。
protected Change SetupApproval(string changeDescription)
{
Change change = Change.GetInstance();
change.Description = changeDescription;
change.DateOfChange = DateTime.Now;
change.MadeBy = Common.ActiveDirectory.GetUsersFullName(AccessCheck.CurrentUser());
change.Page = PageName;
return change;
}
我想编写以下单元测试
[TestMethod]
public void SetupApproval_SubmitChange_ValidateDescription()
{
var page = new DerivedFromBaseClass();
var messageToTest = "This is a test description";
var change = (page as InternalAppsPage).SetupApproval(messageToTest);
Assert.IsTrue(messageToTest == change.Description);
}
我很确定这段代码有很多问题(欢迎提出改正意见),但我的主要目标是开始为整个项目实施一些测试。我决定从小处着手-一个方法一次。我首先尝试创建一个新的测试项目,但由于SetupApproval方法是受保护的,所以我无法访问它。我的下一步尝试是将TestMethod放在基本页面中,但那样就没有运行测试的方法了。
最后,我正在使用Visual Studio 2008的默认测试框架。
DerivedFromBasClass
,但这样做非常有意义,所以我会专门为测试创建一个。谢谢! - Mark