我是pywinauto
的新手,刚刚开始学习。现在,我正在使用pywinauto
进行一些自动测试。所以我需要知道如何检查一个对话框是否显示。
例如:
from pywinauto.application import Application
app = Application()
app.connect(process=1234)
main_window = app.window(class_name='YodaoMainWndClass')
在这里,我想检查main_window是否可见。但是我不知道该怎么做。也许我应该调用__getattribute__
或其他函数?
答案 0 :(得分:1)
方法.exists()
返回True
或False
(如果默认情况下5秒钟不存在)。看起来可能像这样:
main_window = app.window(class_name='YodaoMainWndClass', visible_only=True)
if main_window.exists(timeout=10):
pass # do something
如果未出现该窗口,但我们应该使测试失败,则确保我们等不及要等它打开才容易。方法.wait()
则比以下更可取:
main_window = app.window(class_name='YodaoMainWndClass')
main_window.wait('visible', timeout=10)
如果超时结束,方法.wait()
将引发ElementNotFoundError
异常,否则将继续执行。
有关更多详细信息,请参见第Waiting for Long Operations章。