App 自动化测试

article/2025/10/7 15:03:34

一、5分钟上手自动化测试——Airtest+Poco快速上手 - Airtest Project DocsAirtest Project Docshttps://airtest.doc.io.netease.com/tutorial/1_quick_start_guide/自动化测试工具-Airtest_十一姐的博客-CSDN博客_airtest工具目录一、Airtest介绍与安装二、Airtest基于图像识别自动控制手机App流程三、Airtest基于Poco的UI组件自动化控制App流程一、Airtest介绍与安装主要介绍区别可以看这篇文章,和selenium、appium都是用来自动化测试的不管是appium、airtest,都有录制功能然后自动化生成代码,所以我们可以通过先录制的操作生成代码,然后改代码就可以学会一些常用的功能操作了它的明显特征是基于图像识别来自动控制手机App流程它也可以是基于Poco的UI组件自动化控制App流程https://blog.csdn.net/weixin_43411585/article/details/122554763

 App自动化测试怎么做?实战分享App自动化测试全流程_测试猿大课堂的博客-CSDN博客_app自动化测试怎么做一、什么是app测试?什么是app自动化测试?概念:所谓app测试也称之为移动测试,通俗易懂的理解就是测试我们平时手机使用的程序。那什么是app自动化测试呢?通常情况下是随app产品不断迭代更新,给测试⼈员也增加了测试⼯作量,特别是⼤量繁琐的回归测试。⾃动化测试是应对产品不断迭代更新的辅助测试⼿段(主要是针对回归测试),最终⽬的是为了保证产品质量。简而言之就是自动化的有点就是可重复、效率高,增加软件信任度。 >> 下载300G软测学习资料包【视频教程+PPT+课件+项目源码】二、https://blog.csdn.net/lgqb2012/article/details/124128932?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_title~default-0-124128932-blog-125188946.pc_relevant_downloadblacklistv1&spm=1001.2101.3001.4242.1&utm_relevant_index=2

用手机端的自动化测试工具来爬,主要软件有Appium和Airtest,Appium 坑比较大,不仅安装麻烦而且调试时极不方便,再者获取不到小红书笔记的详情页的页面结构,本文主要讲下使用 Airtest + Mitmproxy 进行手机端的爬虫,这两者加起来,可以解决90%的 App 爬虫吧,除了淘宝...但可以用Pypeteer。 

Airtest自动化测试篇——Airtest简介

目录

1. 自动化测试的分层

2. UI自动化工具的比较

3. UI自动化面临的问题

4. Airtest的简介

1. 自动化测试的分层

一般将自动化测试从上往下分为三层:

1. UI自动化测试

2. 接口自动化测试

3. 单元/模块自动化测试

1.1 单元/模块自动化

单元/模块自动化是直接对代码逻辑进行自动化测试,大多数由开发实施,少部分公司会由白盒测试公司实施。

常用的工具有Java的Junit、testNG,Python的unittest,pytest等。

1.2 集成接口自动化

接口层的自动化测试主要是对系统和组件之间的接口进行测试,主要目标是校验数据的交换和业务的流程,接口测试可以测试功能、也可以测试性能、测试压力、测试安全等等。

由于接口比代码单元要稳定的很多,所以自动化脚本维护成本更低、收益也更大,具有不错的性价比。

常用的测试工具有:Jmeter、Loadrunner、Postman、SoupUI等

1.3 UI自动化

UI自动化是目前做的最多的自动化,是自动化测试中最接近用户侧的测试,尝试将黑盒的功能和UI测试用程序或功能来执行。

UI层的自动化工具一般按照平台来分:有windows、Linux、Android、IOS、Web、微信小程序等。

2. UI自动化工具的比较

目前常用的UI自动化的工具大致可以按照平台的不同分为:

1. 桌面自动化工具

2. web端自动化工具

3. App自动化工具

2.1 桌面端自动化工具

2.1.1 AutoIt3

基于VB实现,获取信息少,编程实现复杂

https://www.autoitscript.com/site/autoit/downloads/

2.1.2 Microsoft UI Automation

Microsoft UI Automation是一个可访问性框架,它使Windows应用程序能够提供和使用有关用户界面(UI)的编程信息。

它提供对桌面上大多数UI元素的编程访问。它使辅助技术产品(如屏幕阅读器)能够向最终用户提供有关UI的信息,并通过标准输入以外的方式操作UI。UI Automation还允许自动化测试脚本与UI交互

https://github.com/microsoft/Microsoft-UI-UIAutomation

2.1.3 pywin32

pywin32是一个Python库,它为Python提供访问Windows API的扩展,提供了齐全的windows常量、接口、线程以及COM机制等等,安装后会自带一个pythonwin的IDE

https://github.com/mhammond/pywin32

2.2 Web端自动化工具

2.2.1 selenium

目前最主流的web自动化工具,几乎完美支持所有主流浏览器和主流编程语言,轻量并开源

https://github.com/SeleniumHQ/selenium

2.2.2 QTP/UFT

老牌的商业自动化工具,使用VB script,支持脚本的录制和回放

https://www.microfocus.com/zh-cn/products/uft-one/overview

2.3 App自动化工具

目前最主流的是Appium,支持android和ios自动化,开源,支持多种开发语言。

下面是一个简单的App自动化工具对比:

3. UI自动化面临的问题

1. 移动端、桌面端和web端的开发平台和开发工具不同,很难使用一套工具对以上三端进行自动化测试

2. 随着需求和代码的更改,UI自动化的脚本代码需要随之更改,维护成本高,尤其在游戏测试领域,可能不到一周就要重写用例代码

3. 某些软件产品中的图片信息或者图片内容很难进行验证

4. 在游戏测试领域,游戏引擎种类多,UI实现方式也很多,所以以前游戏的自动化测试主要靠开发编写专用的测试工具,自动化比较难实现

4. Airtest的简介

4.1 简介

Airtest是一个由网易开发的跨平台的UI自动化测试框架,基于图像识别原理,适用于游戏和App。

源码地址:

https://github.com/AirtestProject/Airtest

项目文档:

https://airtest.readthedocs.io/zh_CN/latest/

优点:

基于python,跨平台,可以对桌面、web和移动端进行UI自动化测试,尤其适用于游戏和App,同时支持windows、android和ios

4.2 组成

整个工具套件由4个大的部分组成:

1. Airtest IDE

2. Airtest

3. Poco

4. Airlab

4.2.1 AirtestIDE

跨平台的UI自动化测试编辑器, 集成了python3.6,相关的airtest和poco库,无须本地安装python环境就能直接使用的集成开发环境,适合新手。

4.2.2 Airtest

Airtest是一款基于 Python 的、跨平台的UI自动化测试框架。基于图像识别的原理,适用于所有 Android、 iOS和 Windows 应用。因此,不论是手机上的app还是游戏,或者是Windows电脑上面的应用或者游戏等等,都可以用Airtest框架

4.2.3 Poco

Poco是一款基于 UI控件搜索 的自动化框架,它本质上也是 python 第三方库

4.2.4 Airlab

网易Airtest云测试服务


http://chatgpt.dhexx.cn/article/Y44n5h8k.shtml

相关文章

android 自动化测试工具

Auto.js https://github.com/hyb1996/Auto.js/tree/master/app/src/main/assets/sample 布局范围分析 https://blog.csdn.net/zy0412326/article/details/105140707 免费版auto.js apk 下载 https://zhuanlan.zhihu.com/p/90065914?from_voters_pagetrue&ivk_sa10243…

Github每日精选(第65期):手机自动化测试工具maestro

Maestro 现在手机ui的测试工具已经很多了,为什么还要多一款Maestro 呢?我们来看看Maestro 的介绍。 Maestro 是为您的移动应用程序自动化 UI 测试的最简单方法。 github的地址在这里。 Maestro 建立在其前辈(Appium、Espresso、UIAutomat…

手机自动化测试工具实现

手机自动化测试工具实现 一、PC 端监控工具实现 1、手机自动化可解决的问题 ( 1 ) 压力测试:一些连续不断的操作,比如反复切换歌曲播放及联网操作等 ( 2 ) 极限临界测试:一些极限条件的构造(创建多个列表)及输入字…

五款Android 应用的自动化测试工具

如今自动化测试已经应用到每天的测试中。这不足为奇,因为自动化测试在测试过程中节约了时间,还能避免包括人为因素造成的测试错误和遗漏。 自动化测试工具选择很多。一些是开源的,一些非常贵。一些自动化工具是几年前出的,一些才在市场上出来…

Android 应用有哪些自动化测试工具

目录 简述: 1、Monkey 测试 2、 MonkeyRunner 测试 3、Robotium测试 4、Ronaorex测试 5、Appium测试 6、UI Automator 测试 7、TestBird 测试 简述: 本文介绍几款流行的 Android应用自动化测试工具。希望对你有帮助, Monkey测试&…

六款Android 应用的自动化测试工具

如今自动化测试已经应用到每天的测试中。这不足为奇,因为自动化测试在测试过程中节约了时间,还能避免包括人为因素造成的测试错误和遗漏。 自动化测试工具选择很多。一些是开源的,一些非常贵。一些自动化工具是几年前出的,一些才在市场…

超好用的手机开源自动化测试工具分享

随着消费者对移动应用使用的占比增加, APP测试越来越被重视! 在现已出现的开源移动自动化测试工具中,总结了几个最实用的,希望对大家有帮助: 一、Calabash(适用于Android和iOS) Calabash-android是支持android的UI自…

几款Android 应用自动化测试工具

简述: 本文介绍几款流行的 Android应用自动化测试工具。 Monkey测试:随机测试,压力测试,运行在模拟器或实际设备中。 MonkeyRunner测试:操作简单,可录制测试脚本,可视化操作,主要生成…

2021年四大流行Android手机自动化测试工具,全在这里了

Android 自动化测试的工具非常多,但是目前主流使用的就那几个,我会详细说明他们各自的情况,你可以根据自己的需要决定使用哪款工具。 Appium Appium 是目前最主流的移动测试自动化框架,不仅支持 Android 应用,而且适…

2022年四大流行Android手机自动化测试工具,全在这里了

Android 自动化测试的工具非常多,但是目前主流使用的就那几个,我会详细说明他们各自的情况,你可以根据自己的需要决定使用哪款工具。 Appium Appium 是目前最主流的移动测试自动化框架,不仅支持 Android 应用,而且适…

Android 手机自动化测试工具有哪几种?

一、Android手机自动化测试工具,常用的有这7中: 1、首推Appium: 推荐理由:功能非常强大的移动端自动化测试框架,还免费 下载链接:Appium: Mobile App Automation Made Awesome. Appium是一种被广泛使用的…

什么是过滤器?拦截器和过滤器有何区别?

过滤器(Filter) servlet过滤器作用: 1.对不符合要求的请求进行拦截,使之不能到达servlet 2.抽取公共的代码,对共同的业务进行抽离,对请求的数据进行加工 (例如设置编码格式、记录日志信息、鉴别用户是否登录等&#x…

面试官:谈谈过滤器和拦截器的区别?

点击关注公众号,Java干货及时送达👇 来源:blog.csdn.net/qq_42924666/article/details/109563400 一、拦截器和过滤器的区别二、拦截器和过滤器的代码实现三、总结 1、什么是Filter及其作用介绍2、Filter API介绍3、Filter链与Filter生命周期…

springboot(13)拦截器和过滤器的区别

1. 解释拦截器和过滤器的概念 拦截器是一种拦截请求并在请求到达目标之前执行某些任务的机制。 过滤器是一种修改或拦截请求或响应的机制。通常,它们用于在特定的请求或响应被处理之前对其进行处理或修改。 2. 触发时机 过滤器和拦截器触发时机不一样&#xff0…

详解拦截器和过滤器的区别

拦截器和过滤器的区别 过滤器和拦截器的区别: ①拦截器是基于java的反射机制的,而过滤器是基于函数回调。  ②拦截器不依赖与servlet容器,过滤器依赖与servlet容器。  ③拦截器只能对action请求起作用,而过滤器则可以对几乎所…

SpringBoot 的拦截器和过滤器的区别和使用场景

Servlet 现在我们通常做 Java Web 开发都会用 SpringBoot ,但要知道 SpringBoot 只是用来简化开发的,在此之前,Springframework 只是一个粘合剂框架,用来整合各种 Java Web 技术的,SpringMvc 都是出现的比较晚的技术&…

拦截器和过滤器的区别是什么

过滤器 过滤器Filter是基于Servlet实现。Servlet的工作原理是拦截配置好的客户端请求,然后对Request和Response进行处理。Filter过滤器随着web应用的启动而启动,只初始化一次。 过滤器的配置比较简单,直接实现Filter 接口就可以了&#xff…

Spring拦截器和过滤器的区别

本文来说下Spring拦截器和过滤器的区别 文章目录 概述拦截器和过滤器介绍过滤器 (Filter)拦截器 (Interceptor)主要区别 拦截器和过滤器的区别实现原理不同使用范围不同触发时机不同拦截的请求范围不同注入Bean情况不同控制执行顺序不同 本文小结 概述 拦截器和过滤器 filter和…

springboot拦截器和过滤器的区别与使用

拦截器与过滤器的区别 spring的拦截器与servlet的filter有相似之处,比如二者都是AOP编程思想的体现,都能实现权限检查、日志记录等,不同的是: 适用范围不同:filter是servlet规范规定的,只能用于web程序中…

Springboot--拦截器、过滤器 区别,作用,实现方法

Springboot–拦截器、过滤器 拦截器和过滤器的区别 拦截器不依赖于servlet容器,这是springMVC自带的,过滤器依赖于servlet容器拦截器是基于java的反射机制,过滤器是基于函数的回调拦截器只能对action请求起作用,而过滤器可以对几…