欣赏任何有关使用Rhino Mocks使用TDD和Model-View-Presenter模式的有用信息的网站的好例子或引用。
我正在寻找的是关于以下几点
非常感谢这方面的任何意见。
提前致谢。
答案 0 :(得分:4)
由于你没有得到答案,我将尽我所能到目前为止学到的东西;
第一个问题;要模拟什么 - 通常你会模拟你没有测试的一切。因此,鉴于您正在测试ViewModel,您将模拟更改ViewModel的视图代码,以及填充/保留ViewModel的模拟模型代码。
第二个问题; AAA语法 - 通过向测试方法添加以下类型的注释,可以最轻松地保留AAA语法;
[Test]
public void whenUserFillsInFirstAndLastName_ThenUserCanSubmit()
{
// Arrange - code used to set-up what you are testing.
this.loadViewModelWithInitalContext(viewModel); // This is a helper that loads the viewmodel
// Act - code to fullfil the 'when' part in the test.
this.viewModel.FirstName = "test";
this.viewModel.LastName = "me";
// Assert - code to check state of object being tested. (here I am testing a property that I bind to the enabled state of a submit type button)
Assert.IsTrue(this.viewModel.UserCanSubmit);
}
第三个问题,模拟UI行为 - 通常你把它放在测试的Act部分(用于测试ViewModel)。
最后一个问题,最佳实践,我的经验说;
我的推荐参考资料;使用“您最喜欢的搜索引擎”搜索您想要做的事情,或在此发布您的测试示例并获得评论 - 这将有助于您改善自己的工作。
答案 1 :(得分:1)