zoukankan      html  css  js  c++  java
  • python+uiautomation Windows端界面自动化测试

    一、在web系统GUI自动化测试中,可以用uiautomation进行辅助

    二、程序窗口:WindowControl()

      按钮:ButtonControl()

      文本显示:TextControl()(可用于断言)

      输入框:EditControl()

    三、一般定位的属性有:ClassName、Name、ProcessId、AutomationId

    四、实现代码如下:

    复制代码
    import os
    import subprocess
    import uiautomation
    import time
    #打开计算器进程
    subprocess.Popen('calc.exe')
    time.sleep(2)
    #定位窗口
    wc=uiautomation.WindowControl(searchDepth=1,Name='计算器')
    #设置为顶层
    wc.SetTopmost(True)
    wc.ButtonControl(Name='7').Click()
    wc.ButtonControl(Name='加').Click()
    wc.ButtonControl(Name='5').Click()
    wc.ButtonControl(Name='等于').Click()
    result=wc.TextControl(AutomationId='158')
    print(result.Name)
    if result.Name=="12":
        print("测试成功")
    else:
        print("测试失败")
    #截图
    wc.CaptureToImage('1.png')
    time.sleep(2)
    wc.ButtonControl(Name='关闭').Click()
    os.system("taskkill /F /IM calc.exe")
    复制代码
    复制代码
    import uiautomation
    import time
    uiautomation.RightClick(1405,361)
    uiautomation.Click(1468,37)
    wc=uiautomation.WindowControl(searchDepth=1,Name='yx')
    wc.SetTopmost(True)
    edit=uiautomation.EditControl(ProcessId='764(QQ)')
    for i in range(10):
        edit.Click()
        edit.SendKeys('在干嘛啊')
        wc.ButtonControl(Name='发送(&S)').Click()
        time.sleep(3)
  • 相关阅读:
    Asp.Net MVC 体验 1
    myisamchk命令进行崩溃恢复Myisam数据表
    nginx 全局变量
    centos开机启动项设置命令:chkconfig
    redis info 参数说明
    PHP中Imagick的使用
    查看当前nginx、mysql的连接数
    wget参数及用法
    编辑器与IDE
    广州求职,工作经验>5.期待伯乐
  • 原文地址:https://www.cnblogs.com/wangjunjiehome/p/14601064.html
Copyright © 2011-2022 走看看