SciTech-Automation-UI交互自动化: Microsoft 的 接口自动化测试 : 微信的: LLM(AI/Transformer)的自动应答系统

news/2024/9/30 12:59:49

用LLM +Python 实现微信消息的自动应答


!/usr/bin/python3
# coding: utf-8import pandas as pd
import numpy as np
from uiautomation import windowControl,Menucontrol
from functools import partial, wraps# read reply data
df = pd.read_csv("应答数据.csv",encoding="gb18030"
)
def matcher(last_msg, x):ret = Noneif x["关键词"] in last_msg:ret = x["应答内容"]return ret# bind the "title" of WeChat's main window
wx = windowControl(Name="微信",# searchDepth=1
)
print("MainWindow: %r" % (wx,))# bind it's session ctrl.
wx.SwitchToThiswindow()
hw = wx.ListControl(Name="会话")
print("SessionControl: %r" % (hw,))# bind it's "Messages" ctrl.
mc=wx.ListControl(Name="消息")while True:# first 4 items as the "searchDepths"we = hw.TextControl(searchDepths=4)print("Seek unread msg.", we)# check if there's unread msg.while not we.Exists(0):pass# if existing unread msg.if not bool(we.Name):continue# click and retrive the unread msg.we.Click(simulateMove=False)msgs=mc.GetChildren()last_msg = msgs[-1]print("Last One Msg.:%s" % last_msg)#也可用"AI/Transformer"模型应答# choose reply msg by keywordsfilter=partial(matcher, last_msg)replies = df.apply(filter, axis=1)replies.dropna(axis=0,how="any",inplace=1)ar = np.array(replies).tolist()if len(ar) == 0: # keywords no replieswx.SendKeys("没理解", waitTime=0)wx.SendKeys('{Enter}', waitTime=0)wx.TextControl(SubName=last_msg[:-5]).RightClick()continuerms=ar[0].replace('{br}','{Shift}{Enter}')wx.SendKeys(rms, waitTime=0)wX.SendKeys('{Enter}', waitTime=0);



UI自动化 - 微软UI Automation

--- Original: Niuery Diary

自动化测试平台的 稳定性 非常重要。

无论是接口自动化测试,还是UI自动化测试,
目的之一是为提高产品的稳定性,保证用户体验。

接口自动化测试, 常见的有 Postman, SoapUI, JMeter 等, 这一类网上的资料太多。
本篇内容主题是UI自动化测试,我搜集的常用的UI自动化测试平台:
*「Selenium」: Web应用程序自动化测试框架,开源免费,使用非常广泛;
既支持多种语言的脚本驱动测试,也支持记录与回放的方式测试。

  • 「Appium」: APP(移动应用程序)自动化测试框架,开源免费,使用非常广泛;
    支持多种语言的脚本驱动测试。
  • 「Katalon Studio」: UI自动化测试工具,适用于Web, APP和API测试, 免费。
    基于Selenium和Appium,并提供GUI(图形化界面)和集成的测试功能。
  • 「TestComplete」: 商业UI自动化测试工具,适用于PC, Web, APP和API, 付费。
    功能强大, 提供多种脚本语言和图形化界面,以及灵活的对象识别和回放功能。
  • 「Ranorex」: 商业UI自动化测试工具,适用于PC, Web, APP和API, 付费。
    提供易于使用的录制和回放功能,支持多种编程语言。

总之,对PC应用的UI自动化测试,上述要么免费但仅支持Web应用, 要么就是商业化的。
所以有必要提到主题 --- UIAutomation。


UIAutomation


来看一看微软官方对此的介绍 UIAutomation:
Microsoft UI Automation是适用于Microsoft Windows的Accessibility Framework。
它满足了技术产品和自动化测试框架的需求,通过提供对用户界面(UI)信息的编程访问来实现。
此外,UI Automation还使控件和应用程序开发人员能够使其产品有Assistive Technology。

其它的,Google 或 Microsoft Bing就可以搜索到答案。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/66472.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

理解 Vue 的 setup 应用程序钩子

title: 理解 Vue 的 setup 应用程序钩子 date: 2024/9/30 updated: 2024/9/30 author: cmdragon excerpt: 摘要:本文详细介绍了Vue 3中setup函数的应用,包括其概念、特性、使用方法及重要性。setup函数作为组合API的核心,在组件实例化前被调用,用于设置响应式状态、计算属…

记一次Razor Pages无法编译问题及解决

解决方案写在前面:更新Visual Studio及相关组件,本人版本自17.8.0更新至17.11.4 缘起于公司的一个业务接口,在有一些信息需要在应用内嵌的webview中展示,信息不少,涉及的前端技术不复杂,但是拼字符串太罗嗦,所以想到了添加一个Razor页面,所以,常规逻辑,在服务上注册A…

Svnlook使用浅谈(配置svn上传必须添加备注和删除权限)

在配置svn上传必须添加备注和删除权限前,我先隆重介绍下今天用到的svn命令svnlook。svnlook是检验Subversion版本库不同方面的命令行工具,不会对版本库有任何修改,只是查看,包括作者信息、文件内容、更改历史、文件大小、属性等。当然它有自己的独特语法 (1)语法格式:sv…

php: 查看opcache的使用情况

一,代码: opcache的各项参数设置效果怎么样?是否需要调整?我们需要了解一个opcache使用情况的统计,以供调整参数时处理 看php代码: <?php // 确保已经启用了Opcache if (extension_loaded(Zend OPcache) && function_exists(opcache_get_status)) {$status = …

adb命令输入中文字符

前言: adb 可以输入英文的文本,由于不支持unicode编码,所以无法输入中文,github上有个国外的大神写了个ADBKeyBoard输入法的apk,完美支持unicode编码,也能输入中文和其它字符及表情.解决方法: 1、https://zhangka.lanzouw.com/iKPQM2b7q9wd  密码:ah9d,下载并安装apk…

在 win10 2021 LTSC 上安装配置 wsl2 和 ubuntu

在 win10 2021 LTSC 上安装配置 wsl2 和 ubuntu 的过程: 参考官方文档:https://learn.microsoft.com/zh-cn/windows/wsl/install-manual(最后一步安装ubuntu发行版时,请自己解压, 然后拷贝到其他目录 再运行 ubuntu.exe, 否则默认放到了c盘 )win10系统启用wsl2:wsl --inst…

platformio创建工程过慢问题

在vscode安装platformio插件后,打开插件,等待platformio code安装完成后,关闭vscode打开任务管理器,结束进程platformio.exe和所有的Python.exe进程全部结束打开文件C:\用户名\你的用户名.platformio\penv\pip.conf,修改为如下配置[global] index-url = https://mirrors.h…

Guava Cache

1 Guava Cache 介绍 Guava 是 Google 提供的一套 JAVA 的工具包,而 Guava Cache 则是该工具包中提供的一套完善的 JVM 级别的高并发缓存框架。其实现机制类似 ConcurrentHashMap,但是进行了众多的封装与能力扩展。作为 JVM 级别的本地缓存框架,Guava Cache 具备缓存框架该有…