目前流行的自动化就是web,app,接口算是目前最主流的测试内容了,那么如果让做安装windows上的客户端自动化呢?是不是一脸懵?今天安静给大家介绍python的第三方库,可以帮助我们做客户端的自动化

pywinauto

pywinauto是一组用于自动化Microsoft Windows GUI的python模块。 最简单的是,它允许您将鼠标和键盘操作发送到窗口对话框和控件,来完成我们自动化操作。

官方文档:http://pywinauto.github.io/

安装:

方法一:

通过pip进行安装:pip install pywinauto

python如何最大化打开应用 pywinauto窗口最大化_python如何最大化打开应用

 方法二:

https://github.com/pywinauto/pywinauto/releases中下载最新的pywinauto,解压并允许  python setup.py install

验证是否安装成功:

方法一:

直接打开python,进行导入对应的库

python如何最大化打开应用 pywinauto窗口最大化_python如何最大化打开应用_02

方法二:

通过pip进行查看 pip list

python如何最大化打开应用 pywinauto窗口最大化_自动化_03

小试牛刀

在练习之前,需要先了解一个内容,目前pywinauto支持2种查看客户端控件内容

  • Win32 API (backend="win32") - 现在的默认backend
  • MFC, VB6, VCL, 简单的WinForms控件和大多数旧的遗留应用程序
  • MS UI Automation (backend="uia")
  • WinForms, WPF, Store apps, Qt5, 浏览器

注意: Chrome在启动之前需要--force-renderer-accessibility cmd标志。 由于comtypes Python库限制,不支持自定义属性和控件。

如果不确定自己的软件测试时哪一种,我们先用默认的,如果运行过程中会报提示, UserWarning: 32-bit application should be automated using 32-bit Python (you use 64-bit Python) UserWarning)

检测控件软件:

我们可以通过以下三种软件进行检测应用的控件或窗口,来进行操作

1、Spy++ 包含在MS Visual Studio发行版(甚至是Express或Community)中,可通过“开始”菜单访问。 它使用Win32 API。 这意味着如果Spy ++能够显示所有控件,那么“win32”`backend就是你需要的。 AutoIt Window Info工具是一种Spy ++克隆。

2、Inspect.exe 是Microsoft创建的另一个很棒的工具。 它包含在Windows SDK中,因此可以在x64 Windows上的以下位置找到它:



C:\Program Files (x86)\Windows Kits\10\bin\10.0.17134.0\x64



如果以上路径不存在,请自行下载安装:https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk/

3、ViewWizard软件,可以非常方便的检测到我们需要用到的控件类型。

安装也安装完成了,查看也查看过了,那么先进行启动我们的客户端进行测试吧(这里通过的是记事本)



# coding:utf-8
# 导入pywinauto库
from pywinauto import application
# 直接启动记事本
app = application.Application().start('notepad.exe')


 

python如何最大化打开应用 pywinauto窗口最大化_python如何最大化打开应用_04