我正在尝试使用带有Visual Studio Ultimate 2012的编码的ui测试为我的应用程序创建测试,在我的应用程序中运行另一个应用程序(cmd窗口在&#34期间打开;另一个应用程序& #34;跑步)。 我想等到这个"另一个应用程序"完成运行然后检查一些结果。 我怎样才能做到这一点?
如果有人知道如何使用编码的ui测试来控制窗口,我认为它可能有所帮助,直到现在我还没有找到一个例子!
答案 0 :(得分:0)
在try-catch中抛出“while”并等待,捕获正在抛出的异常,例如找不到元素异常
Try
{
while(UIMap.AnotherAppUIWindow.Exists)
{
//Do nothing
}
}catch(Exception)
{
//Window no longer exists
}
答案 1 :(得分:0)
我找到了办法。
我的问题是控制并等待与另一个应用程序相关的cmd窗口"执行。
我运行系统和VS录像机,并在另一个应用程序的cmd窗口弹出时开始录制然后我最大化窗口并停止录制,我这样做是为了获得自动生成的代码来控制这个窗口,代码我得到:
public void WaitUntilAnotherappFinish()
{
#region Variable Declarations
WinWindow uIAnotherppWindow = this.UIAnotherappWindow
#endregion
// Maximize window
uIAnotherppWindow.Maximized = this.WaitUntilAnotherappFinishParams.UIAnotherappWindowMaximized;
}
所以我将最大化窗口命令行替换为等待窗口不存在:
public void WaitUntilAnotherappFinish()
{
#region Variable Declarations
WinWindow uIAnotherppWindow = this.UIAnotherappWindow
#endregion
// wait for window to close
uIAnotherppWindow.WaitForControlNotExist();
}
这完全符合我的要求:)。
重要说明: 请注意,此文件是自动生成的文件,因此您的更改可能会撤消!通过在测试文件中实现自己的方法来解决这个问题。