一、选择程序窗口
1、打印窗口所有控件
dlg.print_control_identifiers()
2、根据窗口标题或类名选择
dlg = app[窗口类名/标题]
dlg = app["窗口类名"]
3、根据窗口类名选择串口
dlg = app.窗口类名
二、窗口的操作方法
1、窗口最大化
dlg.maximize()
2、窗口最小化
dlg.minimize()
3、还原窗口正常大小
dlg.restore()
4、获取窗口显示状态
dlg.get_show_state()
5、关闭窗口
dlg.close()
三、窗口控件的分类
状态栏:StatusBar 静态内容:Static
按钮:Button 复选框:CheckBox
单选框:RadioButton 组框:GroupBox
组合框:ComboBox 对话框(窗口):Dialog
编辑框:Edit 头部内容:Header
列表框:ListBox 列表显示控件:ListView
弹出菜单:PopupMenu 选项卡控件:TabControl
工具栏:Toolbar 工具栏提示:ToolTips
树状视图:Tree View Menu:菜单
MenuItem:菜单项 Pane:窗格
四、控件的相关属性获取
1、获取控件类型:wrapper_object()
print(dlg.wrapper_object()) # 打印窗口的控件类型
print(menu.wrapper_object()) # 打印菜单项的控件类型
print(file.wrapper_object()) # 打印文件的控件类型
2、获取该控件支持的方法:print(dir(a.wrapper_object()))
print(dlg(dlg.wrapper_object())) # 查看控件所支持的方法
3、获取控件的子元素:children
print(dlg.children) # 获取窗口的子元素
print(menu.children) # 获取菜单的子元素
print(file.children) # 获取文件的子元素
4、获取控件类名:class_name
print(dlg.children) # 获取窗口的类名
print(menu.class_name) # 获取菜单的类名
print(file.class_name) # 获取文件的类名
5、以字典形式返回控件的属性:get_properties
print(menu.get_properties) # 获取菜单的属性
6、获取文本内容:texts
print(file.texts()) #获取文本内容
五、截图处理
方法:capture_as_image
#pic = app[].capture_as_image()
pic = menu.capture_as_image()
pic.save("xx.png")
六、菜单控件相关操作
1、获取菜单的子菜单项
print(menu.items())
2、通过下标去选择菜单项
m = menu.item_by_index(0)
print(m)
3、通过路径去选择菜单项
m = menu.item_by_path("文件") 或
m = menu.item_by_path("文件 -> 新建连接...")
print(m)
七、菜单项的操作方法
1、获取所有子选项:items
print(file.items())
2、点击菜单项的方法:click_input()
file.click_input()
八、等待方式
1、Wait方法:
作用:等待窗口不处于某个特定状态参数;
wait_for :等待的状态(状态有以下几种)
exists:表示该窗口是有效的句柄
visible:表示该窗口未隐藏
enabled :表示未禁用窗口-
ready:表示该窗口可见并启用·
active:表示该窗口处于活动状态
timeout :超时时间
retry _interval :重试时间间隔
2、Wait_not方法:
作用:等待窗口不处于某个特定状态参数;
wait_for :等待的状态(状态有以下几种)
exists:表示该窗口是有效的句柄
visible:表示该窗口未隐藏
enabled :表示未禁用窗口-
ready:表示该窗口可见并启用·
active:表示该窗口处于活动状态
timeout :超时时间
retry _interval :重试时间间隔
3、wait_cpu_usage_lower方法等待该进程的cup的使用率低于某个阀值
注意:此方法仅适用于整个应用程序进程,不适用于窗口/元素。
参数:
threshold :该进程cup占用率timeout :超时时间
retry_interval :重试时间间隔
九、timings模块
1、wait_until方法:参数:
Timeout:超时时间
retry_interval重试时间 func执行的函数
value 比较的值
op比较方式函数(默认为相等) args给执行函数传位置参数
kwargs给执行函数传关键字参数
2、在执行许多动作需要在之前,之后和之间如果我们需要暂停。
那么模块timings中有几个方法库帮我们实现这种暂停操作。
通过在对象timings. Timings中设置全局静态变量(等待时间),它可以单独根据您的需要进行调整。
全局计时变量值的设置方法
Timings .defaults() :将全局计时设为默认值
Timings.slow() :将所有时间加倍(使脚本执行速度降低约2倍)
Timings. fast(): #将所有计时除以2 (快2倍)
十、编辑类Edit的控件操作
1、快速输入文本内容
dlg["Edit"].type_keys("学python做自动化测试")