SKG*_*SKG 5 c# unit-testing winforms
我正在为我的用户控件编写一个测试用例,它将提示使用MessageBox.Show进行用户操作,要求处理或取消操作.如何设计我的单元测试来模仿用户交互以继续?
我不想重构将逻辑移到中间层.这是获得用户同意并继续进行中间层呼叫的简单案例.此方案的任何帮助/想法重组UI也将有所帮助.
单击按钮只不过是调用相应的click
事件.所以你可能想围绕它建立你的测试.
更好的是(如果不是这样),将代码从前端移出,并围绕业务操作构建单元测试,否则单击按钮即可调用.
在作者编辑后进行更新
只要您不准备拆分,您就不会让它工作,您无法围绕"点击此处","点击此处"构建单元测试.想象一下以下代码:
private int MyFunction()
{
bool insideVariable = false;
if(insideVariable)
return 1;
else
return 2;
}
Run Code Online (Sandbox Code Playgroud)
你永远无法对insideVariable设置为true的情况进行单元测试; 你可以:
return 1
语句位于中间层的某个位置return 1
语句是GUI中的方法.然后,您可以测试该功能.应用程序前端应该很容易替换,因此不应该存储任何业务逻辑.单元测试只是生活在主GUI旁边的另一个前端.
归档时间: |
|
查看次数: |
9985 次 |
最近记录: |