常用的桌面端自动化测试工具

 桌面端软件相比Web端软件而言,因为界面元素的多种形态,导致其定位更难,目前市面上常见的定位方式一般是两种,一种是通过控件本身的属性定位,第二种是通过图片识别来定位,市面上常用的可以支持不同操作系统的自动化测试工具有:

  • 1.AutoIt

        AutoIt是一种Windows平台上的自动化测试工具,主要用于GUI自动化测试。AutoIt提供了一些内置函数和命令,可以模拟用户操作(如鼠标点击、键盘输入等)进行测试。AutoIt还可以与其他测试框架(如Selenium)进行集成,实现更高级别的自动化测试。

  • 2.TestComplete

        TestComplete是SmartBear公司开发的一款全面的商业自动化测试工具,支持多种应用程序类型和平台(如Web、桌面、移动应用程序等)。它提供了强大的脚本编辑器和丰富的测试功能,可以进行UI测试、功能测试、性能测试等。

  • 3.Ranorex

        Ranorex是一种易于使用的自动化测试工具,主要用于桌面应用程序和Web应用程序

  • 4.PywinAuto

         如果您使用Python并希望自动化Windows桌面应用程序,Pywinauto是一个不错的选择。它提供了Python API,用于模拟用户交互,查找和控制Windows应用程序的UI元素。

  • 5.SikuliX

        SikuliX是一个跨平台的自动化工具,可用于自动化Windows、macOS和Linux上的桌面应用程序。它使用图像识别来模拟用户操作,允许您通过在屏幕上选择和识别元素来编写自动化脚本。

  • 6.WinAppDriver

        WinAppDriver全称为Windows Application Driver,是一个开源的Windows应用程序驱动程序,允许使用Selenium的WebDriver协议自动化Windows桌面应用程序。它可与多种编程语言一起使用,如Java、Python、C#等。

  • 7.AutoHotkey

         AutoHotkey是一个强大的自动化和自定义脚本工具,可用于自动化Windows桌面应用程序的任务。它具有自己的脚本语言,可以用于模拟键盘输入、鼠标点击和窗口控制。

  • 8.QAliber

        QAliber 是一个自动化测试框架,主要用来创建在 Windows 下快速、可重用、可靠的系统测试,QAliber 包含一个图形化工具用来创建测试,还包含一个 VisualStudio 的插件;支持录制和回放脚本功能

  • 9.UFT软件

        UFT:Unified Functional Testing(统一功能测试),原名为QuickTest Professional,成熟的商业工具,提供录制和回放脚本的方式,支持的语言是VBscript。

  • 10.Rapise

        开源的自动化测试工具,可以测试桌面端,移动端、Web端及API;Rapise使用标准JavaScript和并提供易于使用的库,生成的脚本未(.js)文件。

  • 11.Squish

        商业软件,通过图片来识别控件并提供断言,支持python语言。但是目前试用仅对公司开展,不提供个人用户的试用。

  • 12.uiautomation

        uiautomation既支持模拟鼠标和键盘的操作,支持通过控件定位方式直接定位目标控件的位置,而不需要自己去获取对应坐标位置;还支持目标控件的截图,通过截图来控制控件,但是缺点在于截取产生的图片对象难以直接与PIL库配合,只能导出文件后让PIL图像处理库重新读取。

  • 13.Airtest的UI自动化测试工具

        Airtest是一款基于图像识别和基于poco的UI控件搜索框架的测试工具,因此会更适合游戏和APP的测试。Airtest是网易团队自主研发的的一个图像识别框架,它使用的是图形脚本语言Sikuli,在编写脚本时不需代码,而只需要使用屏幕截屏,用截出来的图形摆列组合成神器的程序。

14.SwtBot

        SwtBot是一个用于Eclipse应用的GUI测试工具,提供访问SWT和Eslipse组件的API,可以用于模拟用户鼠标行为,继承自JUnit。测试脚本可以通过Ant任务运行

作为一个软件测试的过来人,我想尽自己最大的努力,帮助每一个伙伴都能顺利找到工作。所以我整理了下面这份资源,现在免费分享给大家,有需要的小伙伴可以关注【公众号:开心螺蛳粉】自提!

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。在这里插入图片描述

在这里插入图片描述

行动吧,在路上总比一直观望的要好,未来的你肯定会感谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入群:1150305204,里面有各种测试开发资料和技术可以一起交流哦。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt6内嵌CEF

一、下载CEF CEF下载地址:https://cef-builds.spotifycdn.com/index.html 或https://bitbucket.org/chromiumembedded/cef/src/master/ 选择对应系统的版本(本教程选择的是116.0.19) CMake下载地址:https://cmake.org/download…

抖店电子面单怎么发货?发货失败是什么原因?看完你就知道了!

我是电商珠珠 对于抖店来说,必须用平台的电子面单发货,否则就会被平台判定无货源违规。但是,关于发货这方面,一些新手还不知道怎么搞,今天我就来给大家详细的讲一下。 怎么用电子面单发货? 1、电脑搜索“…

thefour--Love is like a tide

最后一部分了,要开始进行我们的训练了。 先上代码: import os import numpy as np from tqdm import tqdm import tensorflow as tf from thetwo import NeuralStyleTransferModel import theone import thethree #创建模型 modelNeuralStyleTransferM…

代码随想录训练营第31天 | 理论基础、LeetCode 455.分发饼干、

目录 理论基础 视频讲解:手把手带你学会操作链表 | 贪心算法理论基础!_哔哩哔哩_bilibili LeetCode 455.分发饼干 文章讲解:代码随想录(programmercarl.com) 视频讲解:贪心算法,你想先喂哪个小孩?| Le…

【GameFramework框架内置模块】7、事件(Event)

推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享简书地址 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。 一、前言 【GameFramework框架】系列教程目录: https://blog.csdn.net/q7…

ADG切换脚本

--查看主备库的切换状态 set linesize 200 select name,log_mode,open_mode,database_role,protection_mode,switchover_status from v$database; --查看归档日志 archive log list; select thread#,sequence#,first_time,next_time,applied from v$archived_log where th…

ChatGPT与音乐领域的新篇章

### ChatGPT与音乐领域的新篇章 随着人工智能技术的日趋成熟,ChatGPT等先进的语言模型已经开始在音乐领域展示其独特的影响力和潜力。ChatGPT不仅改变了音乐创作、分析和教学的方式,而且还为音乐爱好者和专业人士提供了全新的交互体验。本文将探讨ChatG…

windows/linux下其他位置调用指定nodejs脚本报错Error: Cannot find module ‘esm’

问题: 有一个nodejs脚本名为html2word,同目录下还有它对应的package.json,正常在html2word所在目录下执行脚本没问题,但是在其他目录执行时报错:Error: Cannot find module ‘esm’ 原因: 在其他位置执行node脚本时…

【Vue】路由

📝个人主页:五敷有你 🔥系列专栏:Vue ⛺️稳中求进,晒太阳 目录 路由 单页应用程序 总结: VueRouter 核心步骤: 组件存放目录的问题 路由的封装 声明式导航 声明式导航 - 导航链…

Go语言必知必会100问题-11 使用选项模式

使用选项模式 在设计API时,可能会遇到一个问题:如何处理可选配置?有效的解决可选配置问题可以提高API的灵活性。本文通过一个具体示例说明处理可选配置的一些方法。该示例的要求是设计一个对外提供创建HTTP服务器的库函数。函数定义如下&…

记一次服务间调用失败的bug

1. 服务环境描述 1.所有服务都注册到Consul上,服务间调用采用的是服务名; 2.所有服务用docker容器化部署,用docker swarm管理服务集群; 3.docker compose编排文件里的所有服务的端口均未映射出来,即没有加 ports: -…

服了,阿里云服务器和腾讯云服务器价格差不多怎么选择?

2024年阿里云服务器和腾讯云服务器价格战已经打响,阿里云服务器优惠61元一年起,腾讯云服务器62元一年,2核2G3M、2核4G、4核8G、8核16G、16核32G、16核64G等配置价格对比,阿腾云atengyun.com整理阿里云和腾讯云服务器详细配置价格表…

高级语言期末2011级B卷(计算机学院)

1.编写函数&#xff0c;实现按照如下公式计算的功能&#xff0c;其中n为自然数 #include <stdio.h>int fac(int n) {if(n0)return 1;elsereturn n*fac(n-1); }float fun(int n) {float flag;float sum0;for(int i0; i<n; i) {flagi/((i1)*fac(i2));sumflag;}return su…

重推请求之curl和fiddler

在实际的项目中会有出现问题&#xff0c;想重现的场景&#xff0c;比较重新调用一个服务&#xff0c;那么如何进行快速的重推请求呢&#xff0c;记录下来&#xff0c;方便备查。 主要有curl和fiddler两种方式&#xff0c;下面详细说。 方式一、curl 命令 curl 是一个利用URL规…

黑猫详解【UFS M-PHY】第1篇:MIPI M-PHY基础知识

本文依据Unipro1.8/M-PHY4.1/UFSHCI3.0协议及个人工作经验整理而成,如有错误请留言。 文章为个人辛苦整理,付费内容,已加入原创维权,禁止私自转载。 文章所在专栏:《黑猫带你学:UFS协议栈详解》——UFS Unipro/M-PHY/HCI协议栈 兄弟专栏:《黑猫带你学:UFS协议详解》——…

云上攻防-云服务篇弹性计算服务器云数据库实例元数据控制角色AK控制台接管

知识点: 1、云服务-弹性计算服务器-元数据&SSRF&AK 2、云服务-云数据库-外部连接&权限提升 章节点&#xff1a; 云场景攻防&#xff1a;公有云&#xff0c;私有云&#xff0c;混合云&#xff0c;虚拟化集群&#xff0c;云桌面等 云厂商攻防&#xff1a;阿里云&am…

租赁小程序|租赁系统|租赁软件开发带来高效运营

随着社会的不断发展和科技的不断进步&#xff0c;越来越多的企业开始关注设备租赁业务。设备租赁作为一种短期使用设备的方式&#xff0c;为企业提供了灵活和成本节约的优势。针对设备租赁业务的管理和提升企业竞争力的需求&#xff0c;很多企业选择定制开发设备租赁系统。本文…

【大数据】-- maxcompute/odps 存储优化之小文件合并

1、背景 在 flink 写入 odps 表时,发现抛出了异常。经过查询知道原因是该 odps table 表的小文件过多,超过了最大数量,导致写入失败。 2、小文件的定义 分布式文件系统按块(Block)存放数据,文件大小比块大小(64MB)小的文件称为小文件。分布式系统不可避免会产生小文件…

js 面试 1判断变量是否是数组 2 检测数据类型方法

1 是否是数组 1) typeof 检测数据类型运算符 优点&#xff1a;使用简单 缺点&#xff1a;只能检测基本类型&#xff08;除null外&#xff09; console.log(typeof(10)) //Number console.log(typeof(false)) //boolean console.log(typeof(hello)) //string console.log(typeof…

【Python】requests库的介绍及用法

目录 1、应用场景 2、requests-三方库 1、应用场景 Python中的requests库被广泛应用在需要发送HTTP请求的场景中。以下列举了一些主要的应用场景&#xff1a; API调用&#xff1a; 许多服务提供了API接口&#xff0c;我们可以使用requests库发送GET、POST、PUT、DELETE等请…