linux桌面qt应用程序UI自动化实现之dogtail

ops/2024/11/29 18:08:49/

1. 前言

Dogtail适用于Linux 系统上进行 GUI 自动化测试,利用 Accessibility 技术与桌面程序通信;Dogtail 包含一个名为 sniff 的组件,这是一个嗅探器,用于 GUI 程序追踪;

源码下载:​​dogtail · PyPI

可通过sudo python setup.py install安装或sudo pip install dogtail安装,但是有用户反馈pip安装不能使用sniff命令,自己选择。

还需要安装依赖包,sudo apt install python3-pyatspi python3-pyqt5 ;

2. 代码实现 

python">import time
from dogtail import predicate
from dogtail.tree import rootclass Apps:def __init__(self, appName, description):# 程序启动之后获取程序对象self.main = root.application(appName=appName, description=description)def wait_for_child_by_property(self, max_wait_time=5, **param):"""通过name、roleName等属性寻找子对象,如果找不到返回None如果无入参,返回自身"""

http://www.ppmy.cn/ops/137709.html

相关文章

【基础】jsonpath

https://jsonpath.com/ 背景: 处理多层嵌套,比较复杂,这时候某个json字段吸比较麻烦,此时,吸使用jsonpath来处理这类工作场景。 安装 pip install jsonpathimport jsonpathrelation [{id: 1, label: a1, children: …

C++中智能指针的使用及其原理 -- RAII,内存泄漏,shared_ptr,unique_ptr,weak_ptr

目录 1.智能指针的使用场景分析 2.RAII和智能指针的设计思路 3.C标准库智能指针的使用 4.智能指针的原理以及模拟实现 5.shared_ptr循环引用问题和weak_ptr 5.1shared_ptr循环引用问题 5.2weak_ptr的原理和部分接口 5.3weak_ptr的简单模拟实现 6. shared_ptr的线程安…

Tülu 3:重新定义开源大模型的后训练范式

一、引言 在大型语言模型(LLM)的发展历程中,预训练阶段往往受到最多关注,动辄需要数百万美元算力投入和数万亿token的训练数据。然而,一个鲜为人知但同样关键的事实是:预训练完成的模型实际上并不能直接投…

Modern Effective C++ item 15:尽可能的使用constexpr

constexpr表达式/对象/函数 constexpr表达式值不会改变并且在编译过程就能得到计算结果的表达式。声明为constexpr的变量一定是一个const变量,而且必须用常量表达式初始化: constexpr int mf 20; //20是常量表达式 constexpr int limit mf 1;// mf 1是常量表…

(超详细图文详情)Navicat 配置连接 Oracle

1、下载依赖文件 Oracle官网下载直链:https://www.oracle.com/database/technologies/instant-client/winx64-64-downloads.html 夸克网盘下载(oracle19c版本):https://pan.quark.cn/s/5061e690debc 官网下载选择对应 Oracle 版…

Spring Boot教程之十二: Spring – RestTemplate

Spring – RestTemplate 由于流量大和快速访问服务,REST API越来越受欢迎。REST 不是一种协议或标准方式,而是一组架构约束。它也被称为 RESTful API 或 Web API。当发出客户端请求时,它只是通过 HTTP 将资源状态的表示传输给请求者或端点。传…

网络原理(一)—— http

什么是 http http 是一个应用层协议,全称为“超文本传输协议”。 http 自 1991 年诞生,目前已经发展为最主流使用的一种应用层协议。 HTTP 往往基于传输层的 TCP 协议实现的,例如 http1.0,http1.0,http2.0 http3 是…

霍夫变换:原理剖析与 OpenCV 应用实例

简介:本文围绕霍夫变换相关内容展开,先是讲解霍夫变换基本原理,包含从 xy 坐标系到 kb 坐标系及极坐标系的映射等。接着介绍了 cv2.HoughLines、cv2.HoughLinesP 概率霍夫变换、cv2.HoughCircles 霍夫圆变换的函数用法、参数含义、与常规霍夫…