在WP7 Silverlight应用程序中单击单元测试按钮

本文关键字:单击 单元测试 按钮 应用程序 WP7 Silverlight | 更新日期: 2023-09-27 18:10:34

我的WP7(c#)应用程序不使用MVVM模型。现在我想从我的单元测试代码中测试button2_click函数,以便执行button_click内部的代码。请让我知道是否有这样做的可能性。

 private void button_Click(object sender, RoutedEventArgs e)
 {
         // Some code
 }

示例代码可能真的很有帮助。

谢谢,木谷

在WP7 Silverlight应用程序中单击单元测试按钮

一般来说,UI代码不是单元测试的好目标,无论您是否使用MVVM。您可以通过从测试中直接调用它来对按钮单击处理程序进行单元测试。如果处理程序使用sender并期望它是一个真正的按钮,那么你必须找出最好的方法,没有人可以在没有看到你的代码的情况下回答。

在这种情况下,MVVM将帮助您将代码移动到视图模型,并通过返回ICommand的属性暴露它,然后绑定到按钮的Command属性。通过使用这种方法,你可以封装代码,否则你会嵌入在UI代码后面,并很容易重用代码在其他命令(如菜单选项)。

我可以建议您使用像White这样的UI自动化框架,但我不会。

我宁愿建议你把你的演示/域/任何逻辑从你的视图中分离出来,使用像MVVM, MVP, MVC等良好建立的模式。你刚刚遇到的问题是为什么这是个好主意的原因之一。如果没有它,你将会遇到更多的问题。