您好想问一个奇怪的问题。它是关于测试 WPF 应用程序的。
我当前的测试对象是一个自发打开信息对话框的 WF 应用程序。这些对话框是模态的,每次都可以打开。这对于在该应用程序上运行的自动化测试来说是相当令人不安的。每当我的测试人员访问可视化树并尝试访问 GUI(如调用按钮等)时,可能会打开这样的对话框窗口,从而通过其模式阻止 GUI 并使测试失败。
解决这个问题的一个想法是阻止这些对话框打开。我无法直接更改被测应用程序的行为,但我可以订阅所有窗口事件(如初始化、加载、渲染等)。我想使用其中一个事件来防止窗口打开并以模态方式阻止 GUI。
我尝试使用加载的事件,因为它是实际显示窗口之前的最后一个事件,但是在相应的窗口上调用 Close() 会导致崩溃。我也试过 Hide()... 这可以防止窗口变得可见,但 GUI 仍然被不可见的对话框阻止。
有人知道我如何有效地防止 WPF 窗口/对话框打开或至少以模态方式阻止 GUI 吗?