如何找出被测应用程序中打开窗口的数量

时间:2013-03-05 22:55:44

标签: c# ui-automation coded-ui-tests

我正在使用编码的ui进行自动化我需要计算为测试用例打开的窗口数量,但不知道如何操作。尝试过使用find并获取应用程序并且让孩子们走路,但看起来窗户不属于它。

任何人都有这方面的经验吗?

2 个答案:

答案 0 :(得分:1)

大多数UI框架都有一组打开的窗口。

的Winforms:

int count = Application.OpenForms.Count;
  

FormCollection,包含此拥有的所有当前打开的表单   应用

WPF:

 int count = Application.Current.Windows.Count;
  

一旦窗口引用自动添加到Windows中   窗口在用户界面(UI)线程上实例化;窗户   是否由工作线程创建。窗口参考是   处理完Closing事件后自动删除   在其闭幕活动被提出之前。

答案 1 :(得分:0)

只需在主实例中创建一个静态int,并在所有表单构造函数中进行计数,然后在FormClosing事件中进行计数

也许这个简短的代码会有所帮助

this.Load += delegate { mainInstance.myCount++; };
this.FormClosing += delegate { mainInstance.myCount--; };