2009-08-14 83 views
0

我目前正在为使用Prism和MVVM模式的项目编写ViewModel的单元测试。单元测试函数只改变私有成员变量?

我的视图主要由对不同鼠标事件(LeftMouseButtonDown,LeftMouseButtonUp等)作出反应的ItemsControl组成。当发生这样的鼠标事件时,EventArgs和其他胶水信息被传递给ViewModel,并调用适当的方法(MouseMove事件 - > OnMouseMove方法)。

这样我实现了一种方式来拖动以前添加到ItemsControl中的项目。这是通过在OnMouseLeftButtonDown方法中设置两个成员变量“movingObject”和“gripPoint”并在OnMouseLeftButtonUp方法中将变量设置为null来实现的。

现在出现的问题是如果我应该单元测试这些函数(LeftButtonUp,LeftButtonDown)。理论上他们是由“外部”世界访问( - >不是由ViewModel本身),因此应该得到一个测试,但我应该如何测试一个私有变量的变化(在我看来)不值得公众访问者(对于它存在的低级目的)?

在此先感谢!

回答