我刚开始进行单元测试,并且正在使用Visual,我在表单中有一个名为mm_x的公共变量,它是在表单中的函数中计算的(而不是在类中),当我尝试进行测试时,我找不到从UnitTest方法引用它的方法。测试类上的其他变量很容易,但是这个特定的变量我找不到最好的方法。
我是否应该:
将变量计算的所有逻辑都放在业务类中,然后单元测试业务类?将表单逻辑保存在表单中,并对表单进行单元测试?
作为参考,下面是包含我试图测试的变量的表单中的方法:(poi_navegacion_individual和MR是我使用的两个类,但我对测试mm_X的结果很感兴趣)
private void Leer_NDI_tracker(object sender, EventArgs e)
{
if (MR != null)
{
mm_X = poi_navegacion_individual.POR_x * Convert.ToDecimal(MR.MR0) + poi_navegacion_individual.POR_y * Convert.ToDecimal(MR.MR1) + poi_navegacion_individual.POR_z * Convert.ToDecimal(MR.MR2) + Convert.ToDecimal(MR.MR9);
}
}谢谢,
发布于 2016-01-13 11:35:22
我建议研究一下MVC (Model,View,Controller)实现Windows窗体应用程序的方法。它有助于保持UI和代码的分离。
我个人没有使用它,因为我只使用使用MVVM (Model,View,ViewModel)的WPF应用程序,但是这两个模型背后的原因是相似的,因为它们的目标是将代码和UI分开。
在这里查看一下有关实现MVC:How would you implement MVC in a Windows Forms application?的更多信息。
发布于 2016-01-12 21:56:56
正如您在问题中提到的,您应该将所有业务逻辑与UI元素分开。这不仅使测试您的计算变得容易,而且还将使该方法可被程序的其他部分重用。
https://stackoverflow.com/questions/34753654
复制相似问题