资深测试经验总结,APP测试-关键点整理,少走3年的弯路...

news2024/10/2 20:30:20

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

APP测试它的关键点在哪里?

APP测试的关键,如果你去面试的一家公司主要业务是做一个app测试,他肯定会问你一个问题:你如何去做APP测试?

那我们就从app测试的关键去分析。

大家可以想一想app测试的关键点有哪些?

脑海中应该马上能想到很多专业的测试技术,首先就是一个app功能,这个是毫无疑问的,不管你是做web端还是做app还是做小程序等等。首先功能你把它全部测试好,这个其实和我们的web测试以及其他的测试没有很大的差别,就是测试一些功能。

比如说淘宝,京东,我们去做一些加入购物车,下单等一系列功能测试。
我们还要去做一些app的专项测试,这个专项测试就包含了很多的东西。
当然还有我们的app自动化测试,我们就会从这几个大的方面考虑去做app测试。

功能测试

功能测试我就不多赘述了,很多伙伴都知道功能测试怎么测,根据我们的需求文档把这个功能测试好就OK了。

专项测试

专项测试里面就包含了很多东西,比如说一些app的启动,大家天天都在用手机打开一些应用,那我们的一些app的启动,比如说冷启动,然后你打开一个app首页以及各类页面的加载时间,这个页面加载时间就是用户体验。

如果你一个页面打开要很久,超过好几秒钟了,用户肯定就会吐槽,这个我觉得不行,用得很不爽。

冷启动、页面加载时间,我们可以通过一些弱网测试,就比如你在地铁或者地下车库、电梯里面,加载时间是不是符合我们的需求。

当然还有我们平时一直都在使用的app它的运行日志分析,这个日志去哪里分析呢?很多伙伴可能了解了我们的app是通过adb命令去运行,抓取日志。

那么一般的我们可以通过抓包,app测试抓包是一个非常重要的一个手段,获取日志,比如说请求了哪些接口,然后它的一些日志到底是怎么样的,然后我们的一些数据。

其实大家真正做过app测试的,肯定还知道有第三方平台,比如说我们的友盟,极光,它是可以直接去获取到app的报错日志。

当然不仅仅这一个平台,大家可以自行搜索学习。如果你不知道这些平台,面试的时候,一问就知道你没有什么经验。

app上线到应用市场,比如说我们的oppo、华为、小米这些应用市场发布之后,某一个用户点击这个app报错了,你可以通过这个平台去获取它的报错日志(比如哪个用户闪退了)这可能是大家平时没有去注重的一些点,那其实也是比较关键的。

稳定性测试

还有一个,稳定性测试,你通过抓包还有一些第三方平台只能获取到它的报错,那我们想要app很稳定的运行,用户体验非常好。

app稳定测试大家可能知道最多的是Mokey,我觉得Mokey它其实更多的是压力测试,就是通过一个Mokey去做一些随机点击事件,在一个app上面就像一个猴子一样任意到处高速点击,观察app是否会报出内存溢出、闪退等这一系列的现象。

自动化测试

自动化测试,不管你是做什么类型的测试,自动化都会是一个关键词。怎么去做自动化?
app自动化测试我们熟悉的、企业常用的框架有哪些?

一个大家最熟悉的框架——Appium
那当然还有其他的,比如说airtest
然后我们国内的网易或者阿里巴巴开源的一些框架——macaca,uiautomator
还有很多的框架是支持我们去做自动化的

appium,airtest,macaca,uiautomator,rf…

那这就是当下企业主流的第三方开源自动化测试框架,我是通过这些框架去做app自动化,这些app测试完成之后,自动化从专项、功能后面还有一个兼容性。

app兼容性:手机型号,安卓系统版本,分辨率

兼容性,也分很多种,不仅有手机的型号,系统,现在手机的品牌非常的多,包括了手机屏幕分辨率不一样,有些bug它只在某一个品牌某一个型号的手机上才能重现,这个时候你该怎么办?你需要给面试官说的是你如何解决这些问题的方案和思路。

通过以上测试完之后,一般的在公司里如果你是作为一个有经验的软件测试工程师或者中高级的测试,像这种app的打包、发布这些都是应该由我们测试来做的,因为像开发他只管把他的代码打包,(我告诉大家一些经验和方案,那具体怎么做的,每个需要大家去认真的思考)

那我们一般通过Jenkins构建自动化打包,通过Jenkins一个任务,直接把我们IOS安卓打包成一个应用程序去发布,因为像这种发布大家更多的是做的web端的,比如说后端某一个服务,通过Jenkins构建一下,那app的也是通过我们Jenkins可以自动化打包生成apk。

比如说你想要打包一个测试环境,你不需要去求助开发了,目前大家更多的,我需要测试一个新版本,就会和某某开发说,你开发完了没有,麻烦你帮我打一个包,像这种东西你不需要去找开发了。

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

积极拥抱挑战与困难,奋斗是成长的火种。百折不挠,勇往直前,只有努力才能开创辉煌。相信自己,坚持奋斗,迈向属于自己的辉煌航程!无畏坎坷,闯荡未来,在奋斗中绽放出绚丽的人生华章!

心怀梦想,燃起希望的火焰,奋斗是成就卓越的钥匙。勇敢冲破迷茫,不停探索,只有坚持才能绽放属于自己的辉煌光芒。相信自己,追逐激情,创造出属于自己的不朽传奇!

执着追求,脚踏实地,奋斗是实现梦想的桥梁。坚持磨砺,迎接挑战,只有奋发才能创造非凡。相信自己,不畏困难,踏上征程,终将开启属于自己的辉煌之路!勇往直前,勤勉拼搏,成就辉煌青春。

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

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

相关文章

LeetCode--HOT100题(16)

目录 题目描述:238. 除自身以外数组的乘积(中等)题目接口解题思路代码 PS: 题目描述:238. 除自身以外数组的乘积(中等) 给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等…

el-table那些事

el-table那些事 获取el-table所有勾选的行数据 用于记录工作和日常学习遇到的坑,需求。 vue3element-plusts 获取el-table所有勾选的行数据 1、需要先声明一个ref变量,并赋值给el-table 2、通过el-table提供的getSelectionRows()函数获取选中的"行…

嵌入式系统:连接数字世界的未来

嵌入式设备是专用微型计算机,由硬件、系统级软件和应用软件三个层次组成。硬件包括处理器、存储和各种I/O接口。系统级软件涵盖操作系统和各种I/O子系统。应用软件包括基于不同操作系统的开发。 几乎所有带数字接口的设备都使用嵌入式系统,从大型飞机到…

媒介易讲解体育冠军助力品牌解锁市场营销新玩法

在当今竞争激烈的市场中,品牌推广成为企业取得商业成功的重要一环。然而,随着传统市场推广方式的日益饱和,企业急需创新的市场营销策略来吸引消费者的关注和认可。在这样的背景下,体育冠军助力品牌成为了一种备受瞩目的市场营销新…

MongoDB文档-进阶使用-MongoDB索引-createindex()与dropindex()-在MongoDB中使用正则表达式来查找

阿丹: 之前研究了MongoDB的基础增删改查。在学会基础的数据库增删改查肯定是不够的。这个时候就涉及到了数据库搜索的时候的效率。需要提高数据的搜索效率。 MongoDB索引 在所以数据库中如果没有数据索引的时候。如果需要查找到一些数据。都会去主动扫描所有可能存…

无涯教程-Perl - 面向对象

Perl中的面向对象概念很大程度上基于引用以及匿名数组和哈希。让我们开始学习面向对象Perl的基本概念。 定义类 在Perl中定义一个类非常简单。类以最简单的形式对应于Perl软件包。要在Perl中创建一个类,我们首先构建一个包。 Perl软件包在Perl程序中提供了一个单…

Java-day05(面向对象-1)

面向对象 面向对象与面向过程的区别: 面向过程,强调功能行为;面向对象,强调功能的对象。 Java类及类成员 类:对一类事物描述,是抽象的,概念上的定义对象:实际存在的该类事物的每…

(自控原理)线性系统的频域分析法

目录 一、频率特性 1、频率特性的基本概念 2、频率特性的几何表示方法 二、典型环节与开环系统的频率特性 1、典型环节 2、开环对数的频率特性曲线 三、稳定裕度 1、相角裕度 2、幅值裕度 一、频率特性 1、频率特性的基本概念 2、频率特性的几何表示方法 二、典型环节…

<van-empty description=““ /> 滚动条bug

使用 <van-empty description"" /> 时&#xff0c;图片出现了个滚动条&#xff0c;图片可以上下滑动。 代码如下&#xff1a; <block wx:if"{{courseList.length < 0}}"><van-empty description"" /> </block> <…

跨境电商怎么做?Live Market教你创业及做大生意

随着全球化的不断深入和互联网技术的迅猛发展&#xff0c;跨境电商成为了一个蓬勃发展的行业。根据eMarketer的数据&#xff0c;2021年全球跨境电商销售额将达到4.5万亿美元&#xff0c;预计到2025年将增长至6.3万亿美元。这表明&#xff0c;跨境电商行业将继续保持强劲增长的趋…

uni-app:分页实现多选功能

效果 代码解析 一、标签-列表 <view class"item_all" v-for"(item, index) in info" :key"index"><view class"position parameter-info text-over" :class"{checked_parameter: item.checked}" :data-id"i…

EditPlus取消自动.bak备份

Tools->Preferences->File 将√取消

Java正则校验密码至少包含:字母数字特殊符号中的2种

一、语法 字符说明\将下一字符标记为特殊字符、文本、反向引用或八进制转义符。例如&#xff0c; n匹配字符 n。\n 匹配换行符。序列 \\\\ 匹配 \\ &#xff0c;\\( 匹配 (。^匹配输入字符串开始的位置。如果设置了 RegExp 对象的 Multiline 属性&#xff0c;^ 还会与"\n…

如何开发一个企业ERP系统

企业ERP系统是一种针对企业管理和运营的综合性管理软件&#xff0c;旨在提高企业的效率和生产力。随着信息化时代的发展&#xff0c;越来越多的企业意识到引入ERP系统的重要性。本文将详细介绍如何开发一个企业ERP系统&#xff0c;为读者提供丰富、详细的信息。 一、需求分析 …

基于SpringBoot+Vue的地方美食分享网站设计与实现(源码+LW+部署文档等)

博主介绍&#xff1a; 大家好&#xff0c;我是一名在Java圈混迹十余年的程序员&#xff0c;精通Java编程语言&#xff0c;同时也熟练掌握微信小程序、Python和Android等技术&#xff0c;能够为大家提供全方位的技术支持和交流。 我擅长在JavaWeb、SSH、SSM、SpringBoot等框架…

SQL SERVER ROW_NUMBER、RANK、DENSE_RANK 分页应用

** ROW_NUMBER 、RANK、DENSE_RANK** ROW_NUMBER () over( order by 列) # 不论【列】是否存在重复&#xff0c; 序号都不会重复的&#xff0c;通常用唯一个标识的列 RANK() over(order by 列) # 列 存在重复&#xff0c; 则 顺序号一致&#xff0c; 两个人并列第一&#xff0c…

SpringBoot Plus+代码生产器

0目录 1. Mybatis Plus 2.代码生产器 1.Mybatis Plus 创建数据库和表&#xff08;id没有设置主键和自增长&#xff09; 创建springBoot导入依赖 安装lombok 配置yml 实体类加入注解 无参构造和有参构造 Mapper接口 扫描接口 测试 加入日志 添加 数据库…

Springboot 多数据源 dynamic-datasource动态添加移除数据源

0.前言 上一篇文章我们讲了如何通过多数据源组件&#xff0c;在Spring boot Druid 连接池项目中配置多数据源&#xff0c;并且通过DS注解的方式切换数据源&#xff0c;《Spring Boot 配置多数据源【最简单的方式】》。但是在多租户的业务场景中&#xff0c;我们通常需要手动的…

Python:Spider爬虫工程化入门到进阶(2)使用Spider Admin Pro管理scrapy爬虫项目

Python&#xff1a;Spider爬虫工程化入门到进阶系列: Python&#xff1a;Spider爬虫工程化入门到进阶&#xff08;1&#xff09;创建Scrapy爬虫项目Python&#xff1a;Spider爬虫工程化入门到进阶&#xff08;2&#xff09;使用Spider Admin Pro管理scrapy爬虫项目 目录 1、使…

排序算法(九大)- C++实现

目录 基数排序 快速排序 Hoare版本&#xff08;单趟&#xff09; 快速排序优化 三数取中 小区间优化 挖坑法&#xff08;单趟&#xff09; 前后指针法&#xff08;单趟&#xff09; 非递归实现&#xff08;快排&#xff09; 归并排序 非递归实现&#xff08;归并&am…