如何使用 Teststack.white 自动化框架控制迷你窗口?

Posted

技术标签:

【中文标题】如何使用 Teststack.white 自动化框架控制迷你窗口?【英文标题】:How to get control on mini window using Teststack.white automation framework? 【发布时间】:2014-08-16 10:14:26 【问题描述】:

我正在使用 Teststack.white 自动化框架来控制 WINDOWS 平台下外部应用程序中的 UI 元素。 我通过使用这些命令控制了应用程序的主窗口

// source exe file path.
private const string ExeSourceFile = @"C:\program files\myapp.exe";

//Global Variable to for Application launch
private static TestStack.White.Application Application;

//Global variable to get the Main window of myapp
private static TestStack.White.UIItems.WindowItems.Window MainWindow;


//start process for the above exe file location
var psi = new ProcessStartInfo(ExeSourceFile);

// launch the process through white application
Application = TestStack.White.Application.AttachOrLaunch(psi);

//Get the window of myapp  
MainWindow = Application.GetWindow(SearchCriteria.ByText("myapp"),
 InitializeOption.NoCache);

//Click the Connect button in main window
TestStack.White.UIItems.Button ConnectButton =
MainWindow.Get<TestStack.White.UIItems.Button>(SearchCriteria.ByText("Connect"));
ConnectButton.Click();
MainWindow.WaitWhileBusy();

到目前为止,此代码打开应用程序并控制主窗口,然后单击 CONNECT 按钮。点击后会打开一个新的迷你窗口。 我想控制那个窗口并想按它上面的 OK 按钮。 谁能告诉我如何获得这种控制权?

【问题讨论】:

您好,我遇到了同样的问题,我想知道您是否解决了它。谢谢 【参考方案1】:

在打开迷你窗口后使用它

var miniWindow = Application.GetWindow(SearchCriteria.ByText("miniWindowName"), InitializeOption.WithCache);
Button miniWindowButton = Window.Get<Button>("miniWindowButtonName");
miniWindowButton.Click();

【讨论】:

以上是关于如何使用 Teststack.white 自动化框架控制迷你窗口?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 TestStack.White.UIItems 测试 ItemsControl

如何使用TestStack.White模拟WPF中动态MenuItem的点击?

C# Teststack.White:有时无法找到按钮

TestStack White - 从命令行运行测试

我似乎在 TestStack White 的 ListView.Row("Name", "Value") 方法中有一个错误

[Automation] 自动化测试工具和测试框架大集合